




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、習題91. 某系統片外RAM的片選電路如圖9-38所示:RAM共7路,有2K8位和1K8位兩種芯片,其片選信號都是低電平有效。請為各路RAM芯片注明它的容量和地址范圍。圖9-38 第1題圖解:第一路芯片的地址為8000H-87FFH;第二路芯片的地址為8800H-8FFFH;第三路芯片的地址為9000H-97FFH;第四路芯片的地址為A000H-A3FFH;第五路芯片的地址為A400H-A7FFH;第六路芯片的地址為A800H-ABFFH;第七路芯片的地址為AC00H-AFFFH。2. 對AT89C51單片機外擴4片靜態RAM62128芯片,請畫出硬件電路圖,寫出每片芯片的地址。解:62128
2、(1):0000H-3FFFH,62128(2):4000H-7FFFH,62128(3):8000H-BFFFH,62128(4):C000H-FFFFH3. 8255A有幾種工作方式?如何進行選擇?解:8255A共有三種工作方式,用方式控制字來選擇。4. 現有一片AT89C51單片機,擴展了一片8255A,若把8255A的B口用作輸入,每一位接一個開關,A口用作輸出,每一位接一個發光二極管,請用proteus軟件畫出電路原理圖,并編寫出B口某一位開關接低電平時,A口相應位發光二極管被點亮的程序。解:電路如下圖:程序如下:#include #include #include #define
3、uint unsigned int#define uchar unsigned char/PA,PB,PC及命令端口地址定義#define PA XBYTE0x0000 #define PB XBYTE0x0001#define PC XBYTE0x0002#define COM XBYTE0x0003void main() uchar k;COM=0x82;/控制字while(1) k = PB; PA = k; 5. 按照圖9-18所示8255與AT89C52的連接圖,用8255C口的PC3引腳向外輸出連續的正方波信號,頻率為500Hz。試編程,并用proteus仿真驗證。解:利用定時器0
4、,每1ms中斷一次,在中斷服務程序中改變PC3的狀態。程序如下:#include #include #define PA8255 XBYTE0xe000 /* 定義8255A口地址 */#define PB8255 XBYTE0xe001 /* 定義8255B口地址 */#define PC8255 XBYTE0xe002 /* 定義8255C口地址 */#define COM8255 XBYTE0xe003 /* 定義8255控制寄存器地址 */void timer0init();bit k;unsigned char aa;void init8255(void) ;void main (v
5、oid) timer0init();init8255(); COM8255=0x07;/*PC3置1*/ k=0;while (1); void init8255(void) COM8255=0x80;/*工作方式選擇字送入8255控制寄存器,設置A、B、C口為基本I/O輸出方式 */void timer0init()TMOD=0x01; /設置T0為定時器模式,工作在方式1TH0=(65536-1000)/256;TL0=(65536-1000)%256; EA=1; /開總中斷ET0=1; /允許T0中斷TR0=1; /啟動T0 void timer0() interrupt 1/定時器0
6、每1ms中斷一次TH0=(65536-1000)/256;TL0=(65536-1000)%256; if(k=0) COM8255=0x06;/*PC3清0*/ k=k; else COM8255=0x07;/*PC3置1*/ k=k; 6. 為什么要進行按鍵消抖?按鍵消抖的方法有幾種?解:按鍵是利用機械觸點的合、斷來實現鍵的閉合與釋放,由于彈性作用,機械觸點在閉合及斷開瞬間會有抖動的過程,從而使鍵輸入電壓的信號也存在抖動現象。去除抖動的方法一般有硬件和軟件兩種。硬件方法就是在按鍵輸出通道上添加去抖動電路,從根本上避免電壓抖動的產生,去抖動電路可以是單穩態電路或者濾波電路。軟件方法通常是在檢
7、測到有鍵按下時延遲1020ms的時間,待抖動期過去后,再次檢測按鍵的狀態,如果仍然為閉合狀態,才認為是有鍵按下,否則認為是一個擾動信號。按鍵釋放的過程與此相同,都要利用延時進行消抖處理。由于人的按鍵速度與單片機的運行速度相比要慢很多,所以,軟件延時的方法簡單可行,而且不需要增加硬件電路,成本低,因而被廣泛采用。7. 按鍵輸入程序應具備哪些功能?解:具有下列功能:(1) 確定鍵是否閉合;(2)按鍵消抖處理;(3)確定閉合鍵的位置;(4)確定按鍵是否上訪;(5) 對按鍵進行處理。8. 利用LED顯示器設計一個統計按鍵次數的系統,能夠實時將當前按鍵次數以十進制形式顯示在2位LED顯示器上。(1)所設
8、計的 Proteus仿真電路如圖5-13所示。圖5-13 計數器的仿真電路與效果圖兩位數碼管與單片機相連時,可以采用靜態顯示方式,也可以采用動態顯示方式。這里采用動態顯示方式,將兩個數碼管的段碼連接到單片機的P0口,P0口通過470的上拉電阻接+5V,兩個數碼管的位選由P2.6和P2.7選中。圖5-13中數碼管是共陰極的。(2) 程序設計如下:#include#define uchar unsigned charsbit key=P30;sbit ge= P27;sbit shi=P26;uchar dd; / dd為顯示的數字uchar f0; / f0為鍵按下過的標志 uchar time
9、=0,count=0;uchar code dis =0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/段碼/*延時程序*/void delay(uchar N) uchar i,j; for(i=0;iN;i+) for(j=0;j125;j+);/*顯示程序*/void display(void) P0=disdd%10; /顯示個位 ge=0; delay(3); ge=1; P0=disdd/10; /顯示十位 shi=0; delay(3); shi=1;/*主程序*/void main() dd=0; /開始顯示的數字為0 f0=
10、1; /f0為按下過鍵的標志位,如果按下過鍵,f0=0,否則f0=1 while(1) while (key=1)/鍵未按下,顯示 display(); if (f0=0)dd=dd+1;f0=1; while (key=0)/鍵按下,顯示,標志f0=0 display(); f0=0; (3) 仿真效果099計數器的仿真效果圖如圖5-13所示,圖中顯示的是23。9. LCD1602與AT89C52單片機連接的仿真電路如圖9-36所示。用C語言編程,實現第一行從右側移入“Hello everyone”,同時第二行從右側移入“Welcome to here!”,移入速度自定,然后停留在屏幕上。解
11、:程序設計如下:程序如下:#include#define uchar unsigned char#define uint unsigned intuchar code table=Hello everyone;uchar code table1=Welcome to here!;sbit lcden=P34;/液晶使能端sbit lcdrs=P35; /液晶數據命令選擇端uchar num;void delay(uint z)/延時子程序uint x,y;for(x=z;x0;x-) for(y=110;y0;y-);void write_com(uchar com)/寫命令函數lcdrs=0
12、;/選擇寫命令模式P0=com;/將要寫的命令字送到數據總線上delay(5);/稍微做延時以待數據穩定lcden=1;/使能端給一個高脈沖,因為初始化函數中已將lcden置為0delay(5);/稍做延時lcden=0;/將使能端置0以完成高脈沖void write_data(uchar date)lcdrs=1;P0=date;delay(5);lcden=1;delay(5);lcden=0;void init()lcden=0;write_com(0x38);/設置162顯示,57點陣,8位數據接口write_com(0x0f); /設置開顯示,不顯示光標write_com(0x06);/寫一個字符后地址指針加1write_com(0x01);/顯示清0,數據指針清0void main()init();write_com(0x80+0x10);/先將數據指針定位到第一行第一個字處for(num=0;n
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫院新員工入職培訓體系
- 城市交通規劃歷史重點基礎知識點
- JavaScript實現網頁五子棋小游戲
- 《礦物質與健康》課件
- 《企業數字化轉型之課件解決方案》課件
- 【培訓課件】如何提升顧問單位的滿意度與服務品質
- 進校陪讀協議書范本
- 車站管理協議書范本
- 湖北中考英語試題單選題100道及答案
- 足浴店購銷合同協議
- 獻血法知識試題及答案
- 高通量透析與血液透析濾過介紹
- 寧波2025年寧波海洋經濟發展示范區象山縣高層次緊缺人才選聘筆試歷年參考題庫附帶答案詳解
- T-WSJD 21-2022 內鏡儲存干燥柜衛生要求
- 煤礦井下輔助運輸設計規范
- 2025年合肥高新美城物業有限公司招聘30人筆試參考題庫附帶答案詳解
- 23G409先張法預應力混凝土管樁
- MOOC 國情分析與商業設計-暨南大學 中國大學慕課答案
- 第十二講 建設社會主義生態文明PPT習概論2023優化版教學課件
- 預拌混凝土運輸單(正本)
- 【學習課件】第七章天然氣處理與輕烴回收
評論
0/150
提交評論