欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    单片机课后答案9.docx

    • 资源ID:6806160       资源大小:108.47KB        全文页数:10页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机课后答案9.docx

    1、单片机课后答案9习题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芯片,请画出硬件电路图,写出每片芯片的地址

    2、。解:62128(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

    3、#define 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仿真验

    4、证。解:利用定时器0,每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) ;vo

    5、id main (void) 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为定时器模式,工作在方式1 TH0=(65536-1000)/256; TL0=(65536-1000)%256; EA=1; /开总中断 ET0=1; /允许T0中断 TR0=1; / 启动T0 void timer0

    6、() interrupt 1/定时器0每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显示器设计一个统计按键次数的系统,能够实时将当前按键次数以十进

    8、制形式显示在2位LED显示器上。(1)所设计的 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; /

    9、f0为键按下过的标志 uchar time=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()

    10、 dd=0; /开始显示的数字为0 f0=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 h

    11、ere!”,移入速度自定,然后停留在屏幕上。解:程序设计如下:程序如下:#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_co

    12、m(uchar com)/写命令函数 lcdrs=0;/选择写命令模式 P0=com;/将要写的命令字送到数据总线上 delay(5);/稍微做延时以待数据稳定 lcden=1;/使能端给一个高脉冲,因为初始化函数中已将lcden置为0 delay(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位数据接口 writ

    13、e_com(0x0f); /设置开显示,不显示光标 write_com(0x06);/写一个字符后地址指针加1 write_com(0x01);/显示清0,数据指针清0void main() init();write_com(0x80+0x10);/先将数据指针定位到第一行第一个字处 for(num=0;num15;num+)/做简短延时 write_data(tablenum); delay(5); write_com(0x80+0x50);/写第二行时重新定位数据指针 for(num=0;num16;num+) write_data(table1num); delay(20); for(num=0;num16;num+) write_com(0x1c); delay(100); while(1); (专业文档资料素材和资料部分来自网络,供参考。可复制、编制,期待你的好评与关注)


    注意事项

    本文(单片机课后答案9.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开