附件為:LCD12864顯示漢字和數(shù)字的程序與電路 /* 自定義延時子函數(shù) */ void delayms(uchar z) { int x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } /* 判斷LCD忙信號狀態(tài) */ void buys() { int dat; RW=1; RS=0; do { P0=0x00; E=1; dat=P0; E=0; dat=0x80 & dat; } while(!(dat==0x00)); } /* LCD寫指令函數(shù) */ void w_com(uchar com) { //buys(); RW=0; RS=0; E=1; P0=com; E=0; } /* LCD寫數(shù)據(jù)函數(shù) */ void w_date(uchar date) { //buys(); RW=0; RS=1; E=1; P0=date; E=0; } /* LCD選屏函數(shù) */ void select_screen(uchar screen) { switch(screen) { case 0: //選擇全屏 CS1=0; CS2=0; break; case 1: //選擇左屏 CS1=0; CS2=1; break; case 2: //選擇右屏 CS1=1; CS2=0; break; /* case 3: //選擇右屏 CS1=1; CS2=1; break; */ } } /* LCDx向上滾屏顯示 */ void lcd_rol() { int x; for(x=0;x<64;x++) { select_screen(0); w_com(0xc0+x); delayms(500); } } /* LCD清屏函數(shù):清屏從第一頁的第一列開始,總共8頁,64列 */ void clear_screen(screen) { int x,y; select_screen(screen); //screen:0-選擇全屏,1-選擇左半屏,2-選擇右半屏 for(x=0xb8;x<0xc0;x++) //從0xb8-0xbf,共8頁 { w_com(x); w_com(0x40); //列的初始地址是0x40 for(y=0;y<64;y++) { w_date(0x00); } } } /* LCD顯示漢字字庫函數(shù) */ void lcd_display_hanzi(uchar screen,uchar page,uchar col,uint mun) { //screen:選擇屏幕參數(shù),page:選擇頁參數(shù)0-3,col:選擇列參數(shù)0-3,mun:顯示第幾個漢字的參數(shù) int a; mun=mun*32; select_screen(screen); w_com(0xb8+(page*2)); w_com(0x40+(col*16)); for ( a=0;a<16;a++) { w_date(hanzi[mun++]); } w_com(0xb8+(page*2)+1); w_com(0x40+(col*16)); for ( a=0;a<16;a++) { w_date(hanzi[mun++]); } } /* LCD顯示字符字庫函數(shù) */ void lcd_display_zifuk(uchar screen,uchar page,uchar col,uchar mun) { //screen:選擇屏幕參數(shù),page:選擇頁參數(shù)0-3,col:選擇列參數(shù)0-7,mun:顯示第幾個漢字的參數(shù) int a; mun=mun*16; select_screen(screen); w_com(0xb8+(page*2)); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(zifu[mun++]); } w_com(0xb8+(page*2)+1); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(zifu[mun++]); } } /* LCD顯示數(shù)字字庫函數(shù) */ void lcd_display_shuzi(uchar screen,uchar page,uchar col,uchar mun) { //screen:選擇屏幕參數(shù),page:選擇頁參數(shù)0-3,col:選擇列參數(shù)0-7,mun:顯示第幾個漢字的參數(shù) int a; mun=mun*16; select_screen(screen); w_com(0xb8+(page*2)); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(shuzi[mun++]); } w_com(0xb8+(page*2)+1); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(shuzi[mun++]); } } /* LCD初始化函數(shù) */ void lcd_init() { w_com(0x3f); //LCD開顯示 w_com(0xc0); //LCD行初始地址,共64行 w_com(0xb8); //LCD頁初始地址,共8頁 w_com(0x40); //LCD列初始地址,共64列 } /* LCD顯示主函數(shù) */ void main() { //第一行 int x; lcd_init(); //LCD初始化 clear_screen(0); //LCD清屏幕 lcd_display_shuzi(1,0,4,5); //LCD顯示數(shù)字 lcd_display_shuzi(1,0,5,1); //LCD顯示數(shù)字 lcd_display_hanzi(1,0,3,0); //LCD顯示漢字 lcd_display_hanzi(2,0,0,1); //LCD顯示漢字 //LCD字符漢字 lcd_display_hanzi(2,0,1,2); //LCD顯示漢字 //第二行 lcd_display_zifuk(1,1,2,0); //LCD顯示字符 lcd_display_zifuk(1,1,3,0); //LCD顯示字符 lcd_display_zifuk(1,1,4,0); //LCD顯示字符 lcd_display_zifuk(1,1,5,4); //LCD顯示字符 lcd_display_shuzi(1,1,6,8); //LCD顯示字符 lcd_display_shuzi(1,1,7,9); //LCD顯示字符 lcd_display_shuzi(2,1,0,5); //LCD顯示字符 lcd_display_shuzi(2,1,1,1); //LCD顯示字符 lcd_display_zifuk(2,1,2,4); lcd_display_zifuk(2,1,3,1); lcd_display_zifuk(2,1,4,2); lcd_display_zifuk(2,1,5,3); //第三行 for(x=0;x<4;x++) { lcd_display_hanzi(1,2,x,3+x); //LCD顯示漢字 } for(x=0;x<4;x++) { lcd_display_hanzi(2,2,x,7+x); //LCD顯示漢字 } //第四行 for(x=0;x<4;x++) { lcd_display_zifuk(1,3,x,5+x); //LCD顯示漢字 } lcd_display_shuzi(1,3,4,7); lcd_display_shuzi(1,3,5,5); lcd_display_shuzi(1,3,6,5); lcd_display_zifuk(1,3,7,9); lcd_display_shuzi(2,3,0,8); lcd_display_shuzi(2,3,1,9); lcd_display_shuzi(2,3,2,9); lcd_display_shuzi(2,3,3,5); lcd_display_shuzi(2,3,4,6); lcd_display_shuzi(2,3,5,8); lcd_display_shuzi(2,3,6,9); lcd_display_shuzi(2,3,7,2); while(1); /* while(1) { // LCD向上滾屏顯示 lcd_rol(); } */ }
上傳時間: 2013-11-08
上傳用戶:aeiouetla
C函數(shù)速查手冊 出版社:人民郵電出版社 《C函數(shù)速查手冊》中所講的C語言函數(shù)按照功能順序和字母順序進行排序,讀者既可以按照功能順序查找,也可以按照字母順序?qū)W習?!禖函數(shù)速查手冊》不僅適合于C語言初學者學習使用,而且也可以作為中、高級C語言開發(fā)人員的參考手冊。 目錄 第1章 數(shù)學函數(shù) 1.1 _clear87函數(shù):清除浮點狀態(tài)字 1.2 _status87函數(shù):取浮點狀態(tài)字 1.3 abs函數(shù):求整數(shù)的絕對值 1.4 acos、acosl函數(shù):反余弦函數(shù) 1.5 asin、asinl函數(shù):反正弦函數(shù) 1.6 atan函數(shù):反正切函數(shù) 1.7 atan2、atan2l函數(shù):計算Y/X的反正切值 1.8 cabs函數(shù):計算復數(shù)的模 1.9 ceil函數(shù):向上取整 1.10 cos函數(shù):余弦函數(shù) 1.11 cosh函數(shù):雙曲余弦函數(shù) 1.12 div函數(shù):求兩個整數(shù)相除的商和余數(shù) 1.13 exp函數(shù):指數(shù)函數(shù) 1.14 fabs函數(shù):求浮點數(shù)的絕對值 1.15 floor函數(shù):向下取整 1.16 fmod函數(shù):計算x對y的模 1.17 frexp函數(shù):將浮點數(shù)分為底數(shù)與指數(shù) 1.18 hypot函數(shù):計算直角三角形的斜邊 1.19 labs函數(shù):取長整數(shù)的絕對值 1.20 ldexp、ldexpl函數(shù):冪計算 1.21 ldiv函數(shù):兩個長整型數(shù)相除 1.22 log、logl函數(shù):計算自然對數(shù) 1.23 log10、log10l函數(shù):計算常用對數(shù) 1.24 max函數(shù):求兩個數(shù)中的最大者 1.25 min函數(shù):求兩個數(shù)中的最小者 1.26 modf、modfl函數(shù):分割數(shù)為整數(shù)部分和小數(shù)部分 1.27 poly函數(shù):計算多項式 1.28 pow函數(shù):指數(shù)函數(shù) 1.29 pow10函數(shù):指數(shù)函數(shù) 1.30 rand函數(shù):隨機數(shù)發(fā)生器 1.31 random函數(shù):隨機數(shù)發(fā)生器 1.32 randomize函數(shù):初始化隨機數(shù)發(fā)生器 1.33 sin函數(shù):正弦函數(shù) 1.34 sinh函數(shù):雙曲正弦函數(shù) 1.35 sqrt函數(shù):計算平方根 1.36 srand函數(shù):初始化隨機數(shù)發(fā)生器 1.37 tan、tanl函數(shù):正切函數(shù) 1.38 tanh、tanhl函數(shù):雙曲正切函數(shù) 第2章 字符串函數(shù) 2.1 atof函數(shù):把字符串轉(zhuǎn)換成浮點數(shù) 2.2 atoi函數(shù):將字符串轉(zhuǎn)換成整型數(shù) 2.3 atol函數(shù):將字符串轉(zhuǎn)換成長整型數(shù) 2.4 ecvt函數(shù):將浮點數(shù)轉(zhuǎn)換為字符串 2.5 fcvt函數(shù):將浮點數(shù)轉(zhuǎn)換為字符串 2.6 gcvt函數(shù):將浮點數(shù)轉(zhuǎn)換成字符串 2.7 itoa函數(shù):將整數(shù)值轉(zhuǎn)換為字符串 2.8 isalnum函數(shù):字母、數(shù)字判斷函數(shù) 2.9 isalpha函數(shù):字母判斷函數(shù) 2.10 isascii函數(shù):整數(shù)值的字符分類 2.11 iscntrl函數(shù):控制字符判斷函數(shù) 2.12 isdigit函數(shù):數(shù)字判斷函數(shù) 2.13 isgraph函數(shù):打印字符判斷 2.14 islower函數(shù):小寫字母判斷函數(shù) 2.15 isprint函數(shù):可打印字符判斷函數(shù) 2.16 isptmct函數(shù):標點符號判斷函數(shù) 2.17 isspace函數(shù):空格等判斷函數(shù) 2.18 isupper函數(shù):大寫字母判斷函數(shù) 2.19 isxdigit函數(shù):十六進制數(shù)字判斷函數(shù) 2.20 ltoa函數(shù):將長整值轉(zhuǎn)換為字符串 2.21 mbstowcs函數(shù):將多字節(jié)字符序列轉(zhuǎn)換成相應的寬字符序列 2.22 mbtowc函數(shù):將多字節(jié)字符轉(zhuǎn)換成相應的寬字符 2.23 stpcpy函數(shù):復制字符串 2.24 strcat函數(shù):拼接字符串 2.25 strchr函數(shù):查找給定字符 2.26 strcmp函數(shù):比較字符串 2.27 strcmpi函數(shù):比較字符串 2.28 strcpy函數(shù):復制字符串 2.29 strcspn函數(shù):查找不包含指定字符集子串的段 2.30 strdup函數(shù):將字符串復制到新建的位置 2.31 stricmp函數(shù):比較字符串 2.32 strlen函數(shù):獲取字符長度
上傳時間: 2014-12-25
上傳用戶:水口鴻勝電器
51單片機讀U盤了哈哈
上傳時間: 2013-11-13
上傳用戶:zhangliming420
Keil_uVision4安裝破解方法與漢化
標簽: Keil_uVision 破解 漢化
上傳時間: 2013-10-11
上傳用戶:elinuxzj
Keil C51 V6.23 中文漢化程序,為zip文件,解壓縮之后,覆蓋你的 keil\uv2里的uv2.exe文件即可 漢化說明: 適用于uVision2.23版本。 雖然我盡了我的努力,但不能保證沒有錯誤。如果產(chǎn)生的錯誤對您的工程造成的影響,本人不予負責! 這個版本對大部的英文作了翻譯,包括WIN標準資源和ASCII資源。但由于ASCII資源太多,我是用UTRAEDIT 手工翻譯的,所以很難保不出錯。盡管我是作了測試才發(fā)表的。
上傳時間: 2013-11-22
上傳用戶:wentian_e
Keil C51 V7.0中文漢化程序,解壓縮之后覆蓋你的keil里的同名文件即可。
上傳時間: 2014-01-09
上傳用戶:wwwe
U盤制作-附完整電路圖
上傳時間: 2013-10-08
上傳用戶:crazyer
Keil uVision4漢化軟件
上傳時間: 2014-01-10
上傳用戶:yangbo69
本資料是關(guān)于單片機電路設(shè)計的一些經(jīng)驗,希望對大家有所幫助。。。 前言 MCU發(fā)展趨勢 未來以及相當長的一段時間內(nèi),單片機應用技術(shù)的發(fā)展趨勢為: 1、全盤CMOS化 CMOS 電路具有眾多的優(yōu)點,如極寬的工作電壓范圍、極佳的本質(zhì)低功耗及功耗管理特征,形成了嵌入式系統(tǒng)獨特的低功耗及功耗管理應用技術(shù)。 2、最大化的SoC設(shè)計 目前單片機已逐漸向片上系統(tǒng)發(fā)展,原有的單片機逐漸發(fā)展成通用型SoC 單片機(如C8051F 系列)或SoC 的標準IP 內(nèi)核(如DW8051_core),以及各種專用的SoC 單片機。 3、以串行方式為主的外圍擴展 目前單片機外圍器件普遍提供了串行擴展方式。串行擴展具有簡單、靈活、電路系統(tǒng)簡單、占用I/O資源少等優(yōu)點,是一種流行的擴展方式。 4、8位機仍有巨大發(fā)展空間 電路常識性概念(1)-輸入、輸出阻抗 1、輸入阻抗 輸入阻抗是指一個電路輸入端的等效阻抗。在輸入端上加上一個電壓源U,測量輸入端的電流I,則輸入阻抗Rin=U/I。你可以把輸入端想象成一個電阻的兩端,這個電阻的阻值,就是輸入阻抗。 輸入阻抗跟一個普通的電抗元件沒什么兩樣,它反映了對電流阻礙作用的大小。 對于電壓驅(qū)動的電路,輸入阻抗越大,則對電壓源的負載就越輕,因而就越容易驅(qū)動,也不會對信號源有影響;而對于電流驅(qū)動型的電路,輸入阻抗越小,則對電流源的負載就越輕。因此,我們可以這樣認為:如果是用電壓源來驅(qū)動的,則輸入阻抗越大越好;如果是用電流源來驅(qū)動的,則阻抗越小越好(注:只適合于低頻電路,在高頻電路中,還要考慮阻抗匹配問題。另外如果要獲取最大輸出功率時,也要考慮阻抗匹配問題。)
標簽: 單片機電路 常識 設(shè)計經(jīng)驗
上傳時間: 2013-11-08
上傳用戶:元宵漢堡包
懶人C51初始化程序.exe
上傳時間: 2013-10-27
上傳用戶:yanyangtian
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1