[Ответить в тред] Ответить в тред

03/04/16 - Набор в модераторы 03.04 по 8.04
26/03/16 - Конкурс: Помоги гомункулу обрести семью!
15/10/15 - Набор в модераторы 15.10 по 17.10


[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 22 | 2 | 6
Назад Вниз Каталог Обновить

Аноним # OP  05/06/16 Вск 14:35:55  128957662  
14651265552760.jpg (48Кб, 604x340)
Анон, ебусь с курсачем. Препод дал C8051F930 и лсд DM2021-3, говорит делай таймер реального времени с выводом на лсд.
Код на ASM ща запощу. Чо не так, анон, расскажи.
Аноним # OP  05/06/16 Вск 14:36:34  128957714
$NOMOD51
$include (c8051f930.inc)

LCD_RS bit P0.4
LCD_EN bit P0.5
LCD_DATAb4 bit P0.0
LCD_DATAb5 bit P0.1
LCD_DATAb6 bit P0.2
LCD_DATAb7 bit P0.3


CSEG AT 0
ljmp Main
;-----------------------------------------------------------------------------
; CODE SEGMENT
;-----------------------------------------------------------------------------
Project segment CODE
rseg Project ; Switch to this code segment.
using 0

;------------------------------------------------------------------------------------------
; Задержка
;-----------------------------------------------------------------------------
Del_16ms:
mov R7, #050h
Loop1:
mov R6, #0FFh
Loop0:
djnz R6, Loop0
djnz R7, Loop1
ret

Del_3ms:
mov R7, #010h
Lop1:
mov R6, #0F5h
Lop0:
djnz R6, Loop0
djnz R7, Loop1
ret
;-----------------------------------------------------------------------------
; Инициализация CROSSBAR и WDT
;-----------------------------------------------------------------------------
CrossPortWdt:
anl PCA0MD, # 00h ; NOT(040h) WDT Disabled

orl P0MDOUT, #0FFh ; 0-7 lines push-pull

mov XBR2, #40h ; enable Crossbar and pull ups
ret
;-----------------------------------------------------------------------------
; Инициализация LCD
;-----------------------------------------------------------------------------
init:
clr LCD_RS
clr LCD_DATAb7
clr LCD_DATAb6
setb LCD_DATAb5
setb LCD_DATAb4

setb LCD_EN
call Del_3ms
clr LCD_EN
ret

InitLCD:
call init
call Del_16ms
call init
call Del_16ms
call init
call Del_3ms
;-----------------------------------------------------------------------------
; Инициализация дисплея
;-----------------------------------------------------------------------------
clr LCD_RS
clr LCD_DATAb7
clr LCD_DATAb6
setb LCD_DATAb5
clr LCD_DATAb4

setb LCD_EN
call Del_3ms
clr LCD_EN

mov a,#00101000b
call PutCHAR

mov a,#00001000b
call PutCHAR
mov a,#00000001b
call PutCHAR

mov a,#00000011b
call PutCHAR

mov a,#00000110b ; ???????? ????????(I/D = 1),
call PutCHAR



mov a,#00001100b
call PutCHAR



ret
;-----------------------------------------------------------------------------
; Запись в LCD
;-----------------------------------------------------------------------------
PutCHAR:
rlc A
mov LCD_DATAb7,c
rlc A
mov LCD_DATAb6,c
rlc A
mov LCD_DATAb5,c
rlc A
mov LCD_DATAb4,c
setb LCD_EN
call Del_3ms
clr LCD_EN

rlc A
mov LCD_DATAb7,c
rlc A
mov LCD_DATAb6,c
rlc A
mov LCD_DATAb5,c
rlc A
mov LCD_DATAb4,c
setb LCD_EN
call Del_3ms
clr LCD_EN
ret


Shift:

mov R2,#0Eh ;????? ??
mov r0,#0
loop:

dec R2 ; ????????? R2

mov a,#00011100b ; ????? ?????? ????? ?? ???? ??????????
call PutCHAR


clr LCD_RS

mov a,#8Eh
subb a,r0

call PutCHAR

setb LCD_RS
mov A,#7Ch ; |
call PutCHAR
clr LCD_RS
inc r0
call Del_16ms
call Del_16ms
call Del_16ms
call Del_16ms
call Del_16ms
cjne R2,#00h,loop




clr LCD_RS

mov a,#8Eh
subb a,r0

call PutCHAR

setb LCD_RS
mov A,#2Ah ; *
call PutCHAR
clr LCD_RS

call Del_16ms
call Del_16ms
call Del_16ms
call Del_16ms
call Del_16ms
call Del_16ms
mov a,#00000001b ; clear
call PutCHAR

mov a,#00000010b ; AC=0
call PutCHAR


ret


;-----------------------------------------------------------------------------
; Главная функция
;-----------------------------------------------------------------------------


Main:
call CrossPortWdt

cycle:
call InitLCD





setb LCD_RS
mov A,#7Eh ; ->
call PutCHAR

clr LCD_RS
mov A,#8Fh
call PutCHAR

setb LCD_RS
mov A,#7Ch ; |
call PutCHAR


clr LCD_RS
call Shift


jmp cycle


END
Аноним # OP  05/06/16 Вск 14:38:20  128957839
ну короч табуляцию попортил немного
Аноним 05/06/16 Вск 14:39:28  128957925

бамп
Аноним 05/06/16 Вск 14:42:18  128958141
Вы тут про наркотики базарите или чо? Какой препод? Какие ЛСД?
Аноним 05/06/16 Вск 14:42:51  128958189
ОП, что за специальность у тебя?
Аноним 05/06/16 Вск 14:43:32  128958234
>>128958189
информационная безопасность
Аноним 05/06/16 Вск 14:45:25  128958356

бумп
Аноним 05/06/16 Вск 14:47:35  128958525
О пацаны могу помочь, но не уверен
Аноним 05/06/16 Вск 14:47:38  128958529
>>128958141
>Вы тут про наркотики базарите или чо? Какой препод? Какие ЛСД?
Ты Кастанеда шоль ебать еа обучении у дона Хуана?
Аноним 05/06/16 Вск 14:48:37  128958599
>>128958525
давай, брат, шаришь в асм?
Аноним 05/06/16 Вск 14:49:43  128958691
>>128958599
Да, а че надо
Аноним 05/06/16 Вск 14:51:08  128958790
У вас код полная хуня
Аноним 05/06/16 Вск 14:51:48  128958832
Парни, вы случайно не с Политеха?
Аноним 05/06/16 Вск 14:52:15  128958868
>>128958691
ну хотяб инициализацию лсд норм написать, а то я как будто костылями пишу
Аноним 05/06/16 Вск 14:52:39  128958892
>>128958790
да
Аноним 05/06/16 Вск 14:52:56  128958913
Ебать пацан, ты блять куда пост залил знаешь?
Аноним 05/06/16 Вск 14:53:53  128958963
>>128958913
к лучшим обращаюсь, еба
Аноним 05/06/16 Вск 14:54:25  128959000
>>128958832
Заканчивал 10 лет назад, а че?
Аноним 05/06/16 Вск 14:56:25  128959158
>>128957662 (OP)
Почему именно на ассемблере? Такое условие препода?
Аноним 05/06/16 Вск 14:58:42  128959296
Бля, у меня есть знакомый, он может сделать, в прошлом году с этим ебался, может тебе помочь, если остались данные
Аноним 05/06/16 Вск 14:59:06  128959326
>>128958913
Да, над чтоб на асм обязательно было
Аноним 05/06/16 Вск 15:05:05  128959732
14651283050110.jpg (556Кб, 2416x2048)
бемп

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 22 | 2 | 6
Назад Вверх Каталог Обновить

Топ тредов