亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rs_pwm.asm

?? CCP1模塊使用的有關PIC應用程序Trabicom On Board Engine Controller
?? ASM
字號:
	Title "RS_PWM.asm"
        list p=16c74,f=inhx8m

;This program runs on the PICDEM-2 demo board.
;In the Demo board, Port B is connected to 8 LEDs. 
;When the PIC16C74 receives a word of data from
;the USART, the value is displayed on the LEDs and
;is retransmitted to the host computer.


STATUS  equ     03H		;Status Register
PCL	equ	02H
PORTB 	equ     06H		;PORTB Data Latch when written PORTB pins when read PORTB = 8 Bit wide bi-directional port
TRISB   equ     06H
PORTC   equ     07H
TRISC   equ     07H
TMR2	equ	11H
PR2	equ	92H
CCP1CON	equ	17H
CCP2CON	equ	1DH
CCPR1L	equ	15H
CCPR2L	equ	1BH
T2CON	equ	12H

CASE	equ	21H
TEMP_X	equ	22H

INTCON  equ     0BH		;Interrupt ... Register
PIE1    equ     0CH		;Contains individual enable bits for the Peripheral Interrupt Register
PIR1    equ     0CH		;Contains individual flag bits for the Peripheral Interrupt Register
TXSTA   equ     18H		;Transmit Status and Control Register
				;Bit 2 of TXSTA = BRGH (Baud Rate Generator High Speed)
				;Equations: 
				;Bit 2: BRGH = 0 (Low Speed)
				;Bit 4: SYNC = 0 (Asynchronous) Desired Baud Rate = Fosc (4 MHz)/64(X+1) (For 9600 X=5.51 --> Calculated Baud Rate w/ X=6 --> 8929 = 7 % Error)
				;Bit 4: SYNC = 1 (Synchronous) Desired Baud Rate = Fosc (4 MHz)/4(X+1)
				;Bit 2: BRGH = 1 (High Speed); SYNC = 0 Desired Baud Rate = Fosc (4 MHz)/16(X+1) (For 9600 X=25.042 --> Calculated Baud Rate w/ X=25 --> 9615 = 0.16 % Error)
				;X = SPBRG Value (decimal) (For 2404 Baud --> X = 103)
RCSTA   equ     18H		;Receive Status and Control Register
TXREG   equ     19H		;USART Transmit Data Register (USART = Universal Synchronous Asynchronous Receiver Transmitter)
SPBRG   equ     19H		;Baud Rate Generator Register
RCREG   equ     1AH		;USART Receive Data Register
PIR1    equ     0CH		;-Doppelt deklariert??
COUNT   equ     0x20
Z       equ     2h
RP0     equ     5h		;Register Bank Select Bits (used for direct adressing)


	org	00h		;Reset Vector
	goto	Start		;Unconditional Branch to Start; PC = Address Start

	org	04h
	goto	IntVector

        org     05h		;Beginning of program EPROM

Init
	bcf	STATUS,RP0	;Status[RP0]=1
	clrf    PORTC


	bsf	STATUS,RP0	;Status[RP0]=1
	clrf	TRISC
	
	bcf	STATUS,RP0	;Status[RP0]=1
        clrf    PORTB           ;Clear PORTB output latches
				;Z=1
	bsf	STATUS,RP0	;Status[RP0]=1
	clrf    TRISB		;Config PORTB as all outputs
				;Z=1
	movlw	b'00100000'	;Move 8 Bits into W; Enable RCIF interrupt
	movwf	PIE1		;Move W into PIE1 --> RCIE=1 Enables the USART receive interrupt
	movlw	18h		;Move 18h into W; 9600 baud @4MHz

	movwf	SPBRG		;Move W(==18h) into SPBRG --> Baud Rate Generator Register = 29h == 9600 Baud

	movlw	b'10100100'	;Move 8 Bits into W; Async, High baud rate
        movwf	TXSTA		;Move W into TXSTA
				;TXSTA[7]= CSRC (Clock Source Bit);	 		1 == Don't care (W/ SYNC == 1 --> 1 == Master mode (Clock internally from BRG))
				;TXSTA[6]= TX9 (9 bit Transmit Enable Bit)		0 == Select 8 bit tranmissions
				;TXSTA[5]= TXEN (Transmit Enable Bit); 			1 == Transmit enabled
				;TXSTA[4]= SYNC (USART Mode Serlect Bit);		0 == Asynchronous mode
				;TXSTA[3]= Unimplemented (Read as 0)
				;TXSTA[2]= BRGH (High Baud Rate Select Bit);		1 == (w/ SYNC = 0) 1 == High Speed
				;TXSTA[1]= TRMT (Transmit Shift Register Status Bit);	0 == TSR full
				;TXSTA[0]= TX9D (9th Bit of transmit data. Can be parity bit)

	bcf	STATUS,RP0	;STATUS[RP0]= 0; 0 == Register Bank 0 selected (00h - 7fh)
	
	movlw	b'10010000'	;Move 8 Bit into W; Enable continous reception
	movwf	RCSTA		;Move W into RCSTA
				;RCSTA[7]= SPEN (Serial Port Enable Bit); 		1 == Serial Port enabled
				;RCSTA[6]= RX9 (9 bit Receive Enable Bit)		0 == Select 8 bit reception
				;RCSTA[5]= SREN (Single Receive Enable Bit);		0 == (w/ SYNC = 0) Don't care
				;RCSTA[4]= CREN (Continous Receive Bit);		1 == (w/ SYNC = 0) Enables continous receive
				;RCSTA[3]= Unimplemented (Read as 0)
				;RCSTA[2]= FERR (Framing Error Bit);			0 == no error (1 == Framing Error --> Can be updated by reading RCREG register)
				;RCSTA[1]= OERR (Overrun Error Bit);			0 == no overrun error ( 1 == Overrun error --> Can be cleared by clearing bit CREN)
				;RCSTA[0]= RX9D (9th Bit of received data. Can be parity bit)

	movlw	b'11000000'	;Move 8 Bit into W; Enable global interrupts
	movwf	INTCON		;Move W into INTCON
				;INTCON[7]= GIE (Global Interrupt Enable Bit);		1 == Enables all un-masked interrupts
				;INTCON[6]= PEIE (Peripheral Interrupt Enable Bit);	1 == Enables all un-masked peripheral interrupts
				;INTCON[5]= TOIE (TMRO Overflow Interrupt Enable Bit);  0 == Disables the TMRO Interrupt
				;INTCON[4]= INTE (RBO/INT External Interrupt Enable Bit)0 == Disables the the RBO/INT external interrupt
				;INTCON[3]= RBIE (RB Port Change interrupt Enable Bit);	0 == Disabled
				;INTCON[2]= TOIF (TMRO Overflow Interrupt Flag);	0 == no overflow
				;INTCON[1]= INTF (RBO/INT External Interrupt Flag Bit); 0 == no RB=/INT Ext. Interrupt did occur
				;INTCON[0]= RBIF (RB Port Change Interrupt Flag Bit);	0 == None of the RB7:RB4 pins have changed state


	bsf	STATUS,RP0	; Umschaltung auf Bank 

	movlw	B'10000000'	; Port C Bit 0,1 als Ausgabe (PWM)
	movwf	TRISC		; Port C Bit 7 als Eingabe (C0=Zustand)

	movlw	B'11111111'
	movwf	PR2		; PR2 Register f黵 PWM setzen

	bcf	STATUS,RP0	; Umschaltung auf Bank 0
	clrf 	CCP1CON
	nop

	movlw	0x0c
	movwf	CCP1CON		; als PWM initialisieren

	clrf 	CCP2CON
	nop
	movlw	0x0c
	movwf	CCP2CON		; als PWM initialisieren

	movlw	B'00000100'


	movwf	T2CON		; Initialisierung und Einschalten von Timer2

	bsf STATUS,RP0
	movlw	B'10000000'
	movwf	TRISC
	bcf	STATUS,RP0	; Umschaltung auf Bank 0	
	return

	return
;end of Init


IntVector
Loop1
	movlw	06h		;Mask out unwanted bits; 8 bit Literal (06h) is loaded into W register
	andwf	RCSTA,W		;Check for errors; And W w/ RCSTA: If W==0 then W=result else RCSTA=result; Status affected Z
	btfss	STATUS,2	;Zero Bit test, skip if set
				;Zero Bit=1 when result==0; Zero Bit=0 when result=!0
				;Status[2]==1 ? next line: NOP instead of next line
	goto	RcvError	;Found error, flag it
	
	btfss	PIR1,5		;RCIF Bit test, skip if zero; Check for data ready
				;Bit 5 = RCIF = Serial communication interface receive interrupt flag
				;1 = Receive buffer is full
				;0 = Receive buffer is empty
	retfie			;Return from interrupt
				;Some other interrupt, exit
	
	btfss	CASE,0
	goto 	Else_
	goto	Case1

Else_	
	bsf	CASE,0
	movf	RCREG,W		;Get input data
	movwf	TEMP_X		;Move data into Temp_X
	goto	Case_end
Case1	
	bcf	CASE,0
	movf	RCREG,W		;Get input data
	movwf	CCPR2L		;Value into PWM2 - register
	movf	TEMP_X,0	;Move Temp_X into W register
	movwf	CCPR1L	
	goto	Case_end

Case_end			
	goto Loop1
	retfie			;Return from interrupt
;end of InitVector


RcvError
	bcf	RCSTA,4		;Clear reciever status; RCSTA[4]=0
	bsf	RCSTA,4		;RCSTA[4]=1

	movlw	0FFh		;Light all LEDs
	movwf	PORTB	
	
	retfie			;Return from interrupt
;end of RcvError


Start	call Init

Loop	
	goto	Loop		;Unconditional Branch to Loop; PC = Address Loop

	end




?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99国产精品久久久久久久久久| 捆绑调教美女网站视频一区| heyzo一本久久综合| 国产蜜臀97一区二区三区| 国产精品 日产精品 欧美精品| 久久久99精品免费观看不卡| 成人小视频免费在线观看| 国产精品毛片无遮挡高清| 91麻豆6部合集magnet| 一二三区精品视频| 日韩情涩欧美日韩视频| 国产成人亚洲综合a∨猫咪| 日韩伦理av电影| 欧美日韩精品一区视频| 精品一区二区在线视频| 日本一区二区三区电影| 色欧美日韩亚洲| 久久精品国产一区二区| 国产欧美一区二区精品秋霞影院| 色婷婷亚洲综合| 日韩成人一级片| 中文成人综合网| 一本大道av伊人久久综合| 日产欧产美韩系列久久99| 亚洲国产精品高清| 欧美午夜不卡视频| 国产一区二区0| 亚洲久草在线视频| 日韩精品资源二区在线| yourporn久久国产精品| 日韩电影在线一区二区三区| 国产精品久久久久久久久晋中 | 日本一区二区高清| 欧美视频在线一区二区三区| 国产裸体歌舞团一区二区| 婷婷久久综合九色国产成人| 国产欧美一区二区在线观看| 欧美在线观看18| 国产精品一区二区91| 日欧美一区二区| 自拍视频在线观看一区二区| 精品国产亚洲一区二区三区在线观看| 91小宝寻花一区二区三区| 韩国av一区二区三区四区| 亚洲国产欧美在线| 日韩理论片网站| 欧美激情一二三区| 日韩色在线观看| 在线视频一区二区免费| av一区二区三区在线| 久久成人麻豆午夜电影| 亚洲国产精品人人做人人爽| 国产精品久久久久aaaa樱花| 精品久久久久久无| 欧美日韩在线观看一区二区| 一本色道久久加勒比精品| 国产成人午夜99999| 另类小说图片综合网| 亚洲综合精品久久| 亚洲欧洲av一区二区三区久久| 欧美成人video| 91精品国产手机| 欧美性猛交xxxxxxxx| 99精品热视频| 成人18视频日本| 成人综合婷婷国产精品久久| 激情综合色播激情啊| 日日摸夜夜添夜夜添亚洲女人| 亚洲乱码中文字幕| 亚洲欧美综合另类在线卡通| 国产免费成人在线视频| 欧美激情中文不卡| 中文字幕乱码亚洲精品一区 | 欧美丝袜丝交足nylons图片| 色综合天天在线| 色哟哟在线观看一区二区三区| 91最新地址在线播放| 99国产精品久久久久久久久久久| 99久久精品99国产精品 | 亚洲午夜一区二区| 亚洲最快最全在线视频| 亚洲一区二区三区四区在线| 亚洲一二三区在线观看| 午夜久久电影网| 青青草国产成人99久久| 久久99久久99小草精品免视看| 精品一区二区三区久久久| 国产综合色视频| 成人性视频网站| 91福利视频网站| 欧美精品久久一区二区三区| 日韩欧美国产一区二区在线播放| 2023国产精华国产精品| 中文字幕二三区不卡| 亚洲美女精品一区| 五月婷婷综合激情| 久久精品国产在热久久| 成人美女视频在线看| 在线视频一区二区三| 日韩片之四级片| 国产精品美女久久久久久久| 一区二区三区国产豹纹内裤在线| 午夜国产精品一区| 国产专区欧美精品| 99久久99久久精品免费观看| 欧美日韩免费一区二区三区 | 波多野结衣中文一区| 欧美视频一区二区三区四区 | 日本成人在线不卡视频| 国产成人自拍在线| 欧美三级视频在线观看| 久久日韩粉嫩一区二区三区| 亚洲精品一卡二卡| 老汉av免费一区二区三区| 成人av网在线| 4438x亚洲最大成人网| 国产亚洲精品精华液| 一区二区三区免费在线观看| 国内精品视频666| 色狠狠一区二区三区香蕉| 欧美大黄免费观看| 一区二区理论电影在线观看| 国产一区999| 欧美三级电影在线看| 中文字幕久久午夜不卡| 五月综合激情日本mⅴ| 99精品国产热久久91蜜凸| 日韩一区二区三区电影在线观看| 中文字幕一区二区三区四区| 另类人妖一区二区av| 色av一区二区| 国产欧美一区二区三区网站| 蜜桃视频一区二区| 色94色欧美sute亚洲线路一久| 久久综合九色综合欧美就去吻| 亚洲第一久久影院| av一本久道久久综合久久鬼色| 日韩欧美国产午夜精品| 亚洲成a天堂v人片| 国产91在线|亚洲| 日韩欧美国产麻豆| 婷婷国产在线综合| 在线精品国精品国产尤物884a| 国产色91在线| 美女高潮久久久| 在线不卡的av| 天天色 色综合| 91国内精品野花午夜精品| 国产精品卡一卡二| 国产精品1区2区| 欧美精品一区二区三区高清aⅴ| 天天做天天摸天天爽国产一区| 欧美日韩五月天| 亚洲区小说区图片区qvod| 粗大黑人巨茎大战欧美成人| 久久久精品国产免大香伊 | 国产精品欧美久久久久无广告 | 奇米四色…亚洲| 欧美日韩dvd在线观看| 亚洲美女精品一区| 色婷婷综合久久久久中文| 亚洲日本免费电影| 91视频观看视频| 亚洲丝袜美腿综合| aa级大片欧美| 亚洲人亚洲人成电影网站色| 播五月开心婷婷综合| 国产精品灌醉下药二区| 91啪亚洲精品| 亚洲免费观看在线视频| 欧美亚洲动漫精品| 亚洲成人免费av| 欧美一区二区女人| 久久福利视频一区二区| 久久众筹精品私拍模特| 国产乱子轮精品视频| 欧美激情一区三区| 99国产精品国产精品毛片| 樱桃国产成人精品视频| 欧美三级在线视频| 免费一级欧美片在线观看| 久久综合久久综合久久| 不卡av电影在线播放| 亚洲观看高清完整版在线观看| 91精品国产色综合久久| 国内精品国产三级国产a久久| 国产欧美日韩视频在线观看| 成人黄色大片在线观看| 亚洲图片欧美综合| 日韩欧美激情在线| 成人激情免费网站| 亚洲一区在线观看网站| 欧美一区二区免费视频| 成人小视频在线观看| 亚洲高清久久久| 久久久亚洲国产美女国产盗摄| 91视频免费播放| 天天av天天翘天天综合网色鬼国产| 精品久久五月天| 色婷婷亚洲一区二区三区|