Сохранен 23
https://2ch.hk/b/res/128957662.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
Аноним OP 05/06/16 Вск 14:35:55 #1 №128957662 
14651265552760.jpg
Анон, ебусь с курсачем. Препод дал C8051F930 и лсд DM2021-3, говорит делай таймер реального времени с выводом на лсд.
Код на ASM ща запощу. Чо не так, анон, расскажи.
Аноним OP 05/06/16 Вск 14:36:34 #2 №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 #3 №128957839 
ну короч табуляцию попортил немного
Аноним 05/06/16 Вск 14:39:28 #4 №128957925 

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

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

Отзывы и предложения