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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? tg_4bitlcd.c

?? 嵌入式LCD驅(qū)動(dòng)程序的實(shí)現(xiàn)top01_pac01
?? C
?? 第 1 頁 / 共 3 頁
字號(hào):
//===================================================================
// This file contains some basic LCD functions (4bit mode).         =
// The R/W-pin of the LCD is permanently set to "write".            =
//                                                                  =
// Used MCU : Intel D87C51FA ( 256 Byte RAM, 8 KByte EPROM,         =
//                             3 Timer, UART, @ 11.0592 MHz )       =
//                                                                  =
// Compiler commandline : sdcc program.c --stack-after-data         =
// Compiler version SDCC V2.19Ba                                    =
//===================================================================

//===================================================================
// Port-map of the MCU :                                            =
//                                                                  =
// P0_0 -> unused                                                   =
// P0_1 -> unused                                                   =
// P0_2 -> unused                                                   =
// P0_3 -> unused                                                   =
// P0_4 -> unused                                                   =
// P0_5 -> unused                                                   =
// P0_6 -> unused                                                   =
// P0_7 -> unused                                                   =
//                                                                  =
// P1_0 -> unused                                                   =
// P1_1 -> unused                                                   =
// P1_2 -> unused                                                   =
// P1_3 -> unused                                                   =
// P1_4 -> unused                                                   =
// P1_5 -> unused                                                   =
// P1_6 -> unused                                                   =
// P1_7 -> unused                                                   =
//                                                                  =
// P2_0 -> unused                                                   =
// P2_1 -> unused                                                   =
// P2_2 -> LCD RS                                                   =
// P2_3 -> LCD E                                                    =
// P2_4 -> LCD D4                                                   =
// P2_5 -> LCD D5                                                   =
// P2_6 -> LCD D6                                                   =
// P2_7 -> LCD D7                                                   =
//                                                                  =
// P3_0 -> [RXD]  unused                                            =
// P3_1 -> [TXD]  unused                                            =
// P3_2 -> [INT0] unused                                            =
// P3_3 -> [INT1] unused                                            =
// P3_4 -> [T0]   unused                                            =
// P3_5 -> [T1]   unused                                            =
// P3_6 -> [WR]   unused                                            =
// P3_7 -> [RD]   unused                                            =
//                                                                  =
//===================================================================


// INCLUDES =========================================================
#include <regc51fx.h>     // Definitions of registers, SFRs and Bits
// END INCLUDES =====================================================


// DEFINES ==========================================================
#define LCD_DATA  P2      // Dataport of LCD-Display (D4..D7) 
#define LCD_RS    P2_2    // Register Select of LCD-Display
#define LCD_E     P2_3    // Enable of LCD-Display
#define CTRL_REG  0       // Select instruction register
#define DATA_REG  1       // Select data register
#define BLINK     0x01    // Alias for blinking cursor
#define NOBLINK   0x00    // Alias for non blinking cursor
#define SHOW      0x02    // Alias for cursor on
#define HIDE      0x00    // Alias for cursor off
#define ON        0x04    // Alias for display on
#define OFF       0x00    // Alias for display off
                                                                                    
// END DEFINES ======================================================


// ISR-Prototypes ===================================================
void External0_ISR(void) interrupt 0;         // ISR for the external input INT0
void Timer0_ISR(void)    interrupt 1 using 2; // ISR for Timer0 overflow
void External1_ISR(void) interrupt 2;         // ISR for the external input INT1
void Timer1_ISR(void)    interrupt 3 using 3; // ISR for Timer1 overflow
void Serial_ISR(void)    interrupt 4 using 1; // ISR for serial reception
void Timer2_ISR(void)    interrupt 5;         // ISR for Timer2 overflow
// END ISR-Prototypes ===============================================


// Prototypes =======================================================
void init_MCU(void);                    // Initialize the MCU

void delay(unsigned int time_100us);    // Timer dependend delay-routine
void putchar(unsigned char value);      // Send a character via UART
void UART_puts(unsigned char *text);    // Sends a string to the UART
void init_LCD(void);                    // Initialize the LCD display
void clrscr(void);                      // Clears LCD screen
void LCD_putchar(unsigned char value);  // Writes a character to display
// Prints a text to x/y position
void LCD_printxy(unsigned char x,unsigned char y, unsigned char *text);
// Controls the display
void control_LCD(unsigned char dsp,unsigned char blink,unsigned char cursor);
// Sets LCD write position
void gotoxy(unsigned char x,unsigned char y);

// END Prototypes ===================================================


// Globals ==========================================================

// Table to select DD-RAM address (including instruction and address)
// 0x00..0x0F -> Line 1, 0x40..0x4F -> Line 2
static unsigned char code LOCATION[2][16] = { {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,
                                               0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F},
                                              {0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,
                                               0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF} };

volatile unsigned int  DELAY;                   // Global delaytime

// END Globals ======================================================


/********************************************************************/
/* Function    : External0_ISR()                                ISR */
/*------------------------------------------------------------------*/
/* Description : Interrupt-Service-Routine on vector #0 for         */
/*               handling interrupt requests on external pin P3_2.  */
/*------------------------------------------------------------------*/
/* Author      : Thorsten Godau  NT8                                */
/*------------------------------------------------------------------*/
/* Input       : none                                               */
/*------------------------------------------------------------------*/
/* Returnvalue : none                                               */
/*------------------------------------------------------------------*/
/* History     : 06/99    V1.0 Basic routine                        */
/*                                                                  */
/********************************************************************/
void External0_ISR(void) interrupt 0 
{
// Safety-routine
_asm
  nop
_endasm;
 
return;  
}


/********************************************************************/
/* Function    : Timer0_ISR()                                   ISR */
/*------------------------------------------------------------------*/
/* Description : Interrupt-Service-Routine on vector #1 for         */
/*               handling Timer0 interrupts. Register set #2 is     */
/*               used to store important registers.                 */
/*               The routine is called every 200祍.                 */
/*------------------------------------------------------------------*/
/* Author      : Thorsten Godau  NT8                                */
/*------------------------------------------------------------------*/
/* Input       : none                                               */
/*------------------------------------------------------------------*/
/* Returnvalue : none                                               */
/*------------------------------------------------------------------*/
/* History     : 06/99    V1.0 Basic routine                        */
/*                                                                  */
/********************************************************************/
void Timer0_ISR(void) interrupt 1 using 2
{
ET0 = 0;                     // Disable Timer0-interrupt

if ( DELAY > 0 ) DELAY--;    // Timebase ticks for delay-routine

ET0 = 1;                     // Enable Timer0-interrupt

return;
}


/********************************************************************/
/* Function    : External1_ISR()                                ISR */
/*------------------------------------------------------------------*/
/* Description : Interrupt-Service-Routine on vector #2 for         */
/*               handling interrupt requests on external pin P3_3.  */
/*               Free for further use.                              */
/*------------------------------------------------------------------*/
/* Author      : Thorsten Godau  NT8                                */
/*------------------------------------------------------------------*/
/* Input       : none                                               */
/*------------------------------------------------------------------*/
/* Returnvalue : none                                               */
/*------------------------------------------------------------------*/
/* History     : 06/99    V1.0 Basic routine                        */
/*                                                                  */
/********************************************************************/
void External1_ISR(void) interrupt 2
{
// Safety-routine
_asm
  nop
_endasm;
  
return;
}


/********************************************************************/
/* Function    : Timer1_ISR()                                   ISR */
/*------------------------------------------------------------------*/
/* Description : Interrupt-Service-Routine on vector #3 for         */
/*               handling Timer1 interrupts. Register set #3 is     */
/*               used to store important registers.                 */
/*               Free for further use.                              */
/*------------------------------------------------------------------*/
/* Author      : Thorsten Godau  NT8                                */
/*------------------------------------------------------------------*/
/* Input       : none                                               */
/*------------------------------------------------------------------*/
/* Returnvalue : none                                               */
/*------------------------------------------------------------------*/
/* History     : 06/99    V1.0 Basic routine                        */
/*                                                                  */
/********************************************************************/
void Timer1_ISR(void) interrupt 3 using 3
{
ET1 = 0;                     // Disable Timer1-interrupt

// Safety-routine
_asm
  nop

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
正在播放一区二区| 国产一区二区三区免费观看| 午夜激情一区二区三区| 久久精品免费看| 成人丝袜高跟foot| 欧美性生交片4| 久久影院午夜片一区| 亚洲天堂网中文字| 蜜臀va亚洲va欧美va天堂| 国产精品中文字幕一区二区三区| 91欧美一区二区| 欧美一区二区精品| 国产精品久久久久久久第一福利| 亚洲高清免费观看| 国产精品一区二区三区网站| 欧美综合欧美视频| 久久香蕉国产线看观看99| 亚洲午夜一区二区三区| 国产一区二区在线视频| 欧美在线999| 国产欧美综合色| 日韩和的一区二区| jvid福利写真一区二区三区| 日韩一区二区三区视频在线观看| 国产精品视频线看| 奇米影视在线99精品| 99麻豆久久久国产精品免费| 日韩一区二区三区av| 亚洲日本韩国一区| 国产麻豆精品95视频| 欧美日韩一级黄| 中文在线免费一区三区高中清不卡| 亚洲大片一区二区三区| 成人免费毛片片v| 欧美一区二区免费| 亚洲成人av福利| 91麻豆swag| 欧美韩国日本一区| 黄页视频在线91| 欧美男同性恋视频网站| 亚洲三级理论片| 国内欧美视频一区二区| 欧美顶级少妇做爰| 亚洲一区二区三区激情| 9色porny自拍视频一区二区| 精品对白一区国产伦| 亚洲成av人片在线| 91成人免费电影| 《视频一区视频二区| 国产精品一区二区久激情瑜伽| 欧美一区二区三区男人的天堂| 一区二区三区中文字幕精品精品 | 色猫猫国产区一区二在线视频| 精品第一国产综合精品aⅴ| 天天影视涩香欲综合网| 91国偷自产一区二区使用方法| 国产精品久久三区| 国产在线精品不卡| 日韩欧美国产三级| 免费不卡在线观看| 91麻豆精品国产综合久久久久久 | 欧美一区二区在线不卡| 一区二区三区在线观看视频| 成人av在线资源| 国产精品国产自产拍高清av王其| 国产福利一区二区三区视频 | 国产宾馆实践打屁股91| 精品国产一二三区| 久久福利资源站| 欧美成人r级一区二区三区| 美女被吸乳得到大胸91| 欧美一级在线观看| 美女任你摸久久| 欧美变态tickling挠脚心| 青娱乐精品视频| 日韩一区二区三区四区 | 中文字幕 久热精品 视频在线| 日韩精品一二区| 国产精品超碰97尤物18| www.成人网.com| 亚洲欧洲www| 91免费精品国自产拍在线不卡| 亚洲欧洲成人av每日更新| 91免费在线看| 亚洲电影欧美电影有声小说| 欧美日韩视频第一区| 天堂一区二区在线免费观看| 91精品免费在线观看| 亚洲成人1区2区| 日韩一级片在线观看| 久久97超碰色| 久久精品视频免费观看| 成人av资源在线| 亚洲午夜羞羞片| 91精品国产综合久久久蜜臀粉嫩| 日韩av一区二区三区| 2023国产精品自拍| 成人免费电影视频| 一区二区三区免费在线观看| 欧美人xxxx| 激情久久五月天| 国产精品午夜在线| 日本国产一区二区| 麻豆免费精品视频| 国产欧美综合在线| 欧美伊人精品成人久久综合97| 日韩成人精品在线| 中文字幕av一区二区三区| 在线亚洲欧美专区二区| 免费看日韩a级影片| 国产人成亚洲第一网站在线播放 | 中文字幕高清一区| 欧美性极品少妇| 久久99最新地址| 亚洲婷婷在线视频| 欧美一级在线免费| 99国产一区二区三精品乱码| 亚洲国产精品久久艾草纯爱| 精品国偷自产国产一区| 91蝌蚪porny| 免费不卡在线观看| 亚洲视频免费在线| 日韩三级在线免费观看| bt欧美亚洲午夜电影天堂| 视频一区在线视频| 国产精品免费视频观看| 在线不卡一区二区| www.亚洲色图.com| 免费观看30秒视频久久| 亚洲欧洲www| 日韩久久久久久| 一本色道a无线码一区v| 国产在线精品免费av| 亚洲国产精品久久久久婷婷884| 久久精品视频在线看| 欧美一区二区三区免费观看视频| 99久久精品国产导航| 精品中文字幕一区二区| 亚洲激情男女视频| 欧美国产精品一区二区三区| 717成人午夜免费福利电影| 北条麻妃一区二区三区| 毛片av一区二区三区| 亚洲综合在线视频| 国产精品你懂的在线欣赏| 欧美一区二区三区免费| 欧美天堂一区二区三区| 96av麻豆蜜桃一区二区| 国产一区二区免费视频| 日韩精品电影在线观看| 亚洲精品乱码久久久久久黑人| 久久一日本道色综合| 在线播放91灌醉迷j高跟美女| av在线播放一区二区三区| 国产一区不卡精品| 美国av一区二区| 视频一区二区不卡| 一区二区三区日韩欧美| 一区在线观看免费| 国产调教视频一区| 久久久青草青青国产亚洲免观| 欧美精品色综合| 欧美日韩亚洲另类| 日本精品免费观看高清观看| 成人激情免费网站| 国产高清视频一区| 国产在线视频一区二区三区| 美腿丝袜在线亚洲一区| 首页国产欧美久久| 亚洲不卡av一区二区三区| 亚洲精品中文在线| 亚洲女人****多毛耸耸8| 国产精品久久国产精麻豆99网站| 久久久噜噜噜久噜久久综合| 日韩一区二区电影网| 911精品国产一区二区在线| 欧美日韩午夜在线视频| 欧美日韩一级视频| 欧美日韩精品一区二区三区| 在线观看免费成人| 欧美三级视频在线| 欧美日韩免费一区二区三区视频| 在线区一区二视频| 欧美三片在线视频观看| 欧美日韩电影在线播放| 欧美日韩二区三区| 欧美一级日韩一级| 欧美变态tickling挠脚心| 2014亚洲片线观看视频免费| 欧美tickle裸体挠脚心vk| 久久综合九色综合久久久精品综合| 精品日产卡一卡二卡麻豆| 久久综合色一综合色88| 国产偷国产偷亚洲高清人白洁| 国产精品无圣光一区二区| 国产精品免费看片| 一区二区在线电影| 午夜私人影院久久久久| 免费黄网站欧美| 国产成人午夜视频|