ATmega32

آرشیو برنامه های ATmega32 روی برد NSK115

ATmega32

آرشیو برنامه های ATmega32 روی برد NSK115

پتانسیومتر روی لپ تاپ (1)

برنامه ای بنویسید که مقدار پتانسیومتر را خوانده و در برنامه سریال کامپیوتر نمایش دهد. 

( فرض کنید پتانسیومتر دارای مقداری ثابت است و مقدار مقاومت خوانده شده سه بار نمایش داده شود) 

 


.include "m32def.inc"
.ORG 0
;>> General Constants
LDI R20,0
LDI R21,$FF

;***************************
;>> Potentiometer 

;>> ADC Initiating
LDI R16,$E0
OUT ADMUX,R16
LDI R16,$87;XXX
OUT ADCSRA,R16
OUT SFIOR,R20


;>> Read from ADC1
;SBI ADMUX,MUX0

IST:
SBI ADCSRA,ADSC; Start Conversion
SBIS ADCSRA,ADIF
RJMP IST


SBI ADCSRA,ADIF; Clear ADIF flag
IN R30,ADCH

;>> Simple Display
OUT DDRC,R21
OUT PORTC,R30;XXX

;RJMP IST

;****************************
;>> USART
;>> loop vars
LDI R23,0
LDI R24,3

;>> USART Registers
CLI
OUT UCSRA,R20
LDI R16,$08
OUT UCSRB,R16
LDI R17,$86
OUT UCSRC,R17

;>> Baud Rate
OUT UBRRH,R20
LDI R16,$47 ;As in ne-ir
OUT UBRRL,R16
SEI

;>> Wait to empty buffer
Sabr:
SBIS UCSRA,5
RJMP Sabr

;>> Send R30
;LDI R30,82
OUT UDR,R30

;>> Repeat above 3X
INC R23
CPSE R23,R24
RJMP Sabr

JJJ:
RJMP JJJ


RJMP IST

نظرات 0 + ارسال نظر
امکان ثبت نظر جدید برای این مطلب وجود ندارد.