原创 51單片機STC89C52 串口發送字符串
BEEP BIT P2.3 LCDEN BIT P3.4 LED BIT P1.0 ORG 0000H LJMP MAIN MAIN: MOV TMOD,#20H MOV TH1,#0FDH MOV TL1,#0FDH SETB TR
原创 51單片機STC89C52 串口接收(查詢)
ORG 0000H LJMP MAIN MAIN: MOV SCON,#50H ANL PCON,#7FH ;SMOD=0 MOV TMOD,#20H MOV TH1,#0FDH ;9600BPS MOV TL1,#0FDH SETB
原创 51單片機STC89C52 繼電器
RELAY BIT P1.0 ORG 0000H LOOP0: SETB RELAY LCALL DELAY CLR RELAY LCALL DELAY SJMP LOOP0 DELAY: ;延時1S SETB RS1 MOV R2
原创 51單片機STC89C52 紅外解碼
/******************************** **For:Car mp3 IrControler **Author:YWZ **Date:2013/10/16 ****************************
原创 51單片機STC89C52 數碼管靜態
DULA BIT P2.6 WELA BIT P2.7 ORG 0000H CLR DULA CLR WELA MOV P0,#0 SETB DULA CLR DULA MOV P0,#0 SETB WELA CLR WELA LOOP
原创 51單片機STC89C52 數碼管動態
DULA BIT P2.6 WELA BIT P2.7 ORG 0000H MOV P0,#0 ;關顯示 SETB DULA CLR DULA LOOP0: MOV R0,#0 LOOP1: MOV DPTR,#TABLEW MOV P
原创 Keil C51對C語言的關鍵詞擴展之六: compact
函數的參數和局部變量存儲在內存模型指定的默認區域內。 我們可以通過small,compact 或large 指定一個函數使用何種內存模型。 #pragma small /* 默認內存模型爲small*/ extern
原创 Keil C51對C語言的關鍵詞擴展之十四: interrupt
8051/8052系列單片機標準向量表: 中斷號 描述 地址 0 外部中斷0 0003h 1 定時/計數器0 000Bh 2 外部中斷1 0013h 3 定時計數器1 001Bh 4
原创 Keil C51對C語言的關鍵詞擴展之十一: xdata
xdata聲明的變量位於外部ram 64KB地址範圍內某一位置。 程序示例: unsigned int xdata m=0; /* 聲明一個全局變量,可位於外部ram 64KB地址範圍內任意位置,由編譯器決定 */ int main(vo
原创 CSR1010 CSR1011 CSR1012 CSR1013 BLE 藍牙4.0 CSR MESH組網 RGB調光燈
藍牙mesh組網,相對zigbee、RF等其他常見方式組網的很大優勢:不需要網關,尤其適合面對普通個人用戶,家庭用戶; 比如用戶購買3個採用zigbee組網方案的燈泡,智能手機是不支持zigbee的,因此用戶還需要購買一個網關設備,該
原创 Keil C51對C語言的關鍵詞擴展之九: idata
idata聲明的變量存儲在內部ram 256字節範圍內。 data聲明的變量存儲在內部ram低128字節範圍內。
原创 Arm Cortex-M0新唐m052外部中斷
#include "register.h" int main(void) { rREGWRPROT = 0x59; //解鎖 rREGWRPROT = 0x16; rREGWRPROT = 0x88; rPWRCON |= (
原创 Keil C51對C語言的關鍵詞擴展之十二: _priority_ 以及 _task_
Keil 51編譯器支持 RTX51 Full 和 RTX51 Tiny 實時多任務操作系統,併爲其提供了_task_關鍵詞以及_priority_關鍵詞。 _task_關鍵詞指示一個函數爲實時任務。 _priority_關鍵詞指示任務優
原创 Keil C51對C語言的關鍵詞擴展之十五: reentrant
reentrant聲明的函數爲可重入函數。可重入的函數能夠被多個進程同時調用。可重入函數在執行時,另外的進程可以中斷當前執行的函數,並且調用同一個函數。正常情況下,C51程序中的函數不能被遞歸地調用,這是由於函數的參數和局部變量都被保存在