lzh电子论坛

欢迎来到lzh电子论坛:
如果您对电子技术感兴趣就加入我们吧!在这里互相交流互相学习!主要讨论的方向有:单片机,ARM,PCB板设计,FPGA,汇编,C/C++等方面。
-----lzh电子论坛
lzhbbs.top-me.com
lzh电子论坛

电子的道路是孤独的,要懂得左手温暖右手,要懂得把debug当作快乐去欣赏,去享受,那样你才会成功...

欢迎访问lzh电子论坛。可通过【谷歌,SOSO,搜狗】搜索“lzh电子论坛”直接进入论坛。点击了解论坛详细制度


    【源码征集】基于Proteus仿真的51单片机学习板

    分享
    xufenglei
    xufenglei
    中级会员
    中级会员

    帖子数 : 34
    威望 : 2
    注册日期 : 13-09-15

    实际的硬件1602能显示出来但是仿真有问题

    帖子 由 xufenglei 于 2013-10-06, 2:22 pm

    求大神指教
    实际的硬件1602能显示出来但是仿真有问题
    其电路图在附件中。
    硬件开机还是有点问题,正在检查中

    现在改了一部分。附件不会删,以后面的一个为准。
    后面的问题是实际的硬件1602能显示出来,但是仿真有问题
    我的开发板能显示出来,但是仿真显示不出来。

    点击下载:LCD1602显示1.zip
    Admin
    Admin
    管理员
    管理员

    帖子数 : 869
    威望 : 15
    注册日期 : 12-11-23
    年龄 : 26

    回复: 【源码征集】基于Proteus仿真的51单片机学习板

    帖子 由 Admin 于 2013-10-07, 7:20 pm

    xufenglei 写道::求大神指教
    实际的硬件1602能显示出来但是仿真有问题
    其电路图在附件中。
    硬件开机还是有点问题,正在检查中

    现在改了一部分。附件不会删,以后面的一个为准。
    后面的问题是实际的硬件1602能显示出来,但是仿真有问题
    我的开发板能显示出来,但是仿真显示不出来。
    我把你的液晶程序改了一下,测试好了:


    代码:
    /************************************
    本函数主要用于写命令
    ************************************/
    void Write_Cmd_1602(uchar com)
    {
       delayms(5);
       LCD_1602_RS = 0;               //选择写命令模式
        LCD_1602_EN  = 1;
       LCD_DATA = com;
        LCD_1602_EN  = 0;               //将使能端置0以完成高脉冲
    }
    /**************************************************************
    本函数主要用于传送数据
    **************************************************************/

    void Write_Data_1602(uchar date)              //写数据
    {
       delayms(5);
       LCD_1602_RS = 1;
       LCD_1602_EN = 1;
        LCD_DATA= date; 
        LCD_1602_EN = 0;
    }

    /*********************************************************
    本函数主要用于1602的初始化
    **********************************************************/

    void Init_1602()                     //1602初始化
    {
       LCD_1602_EN = 0;                     //开使能端
       Write_Cmd_1602(0x38);               //设置16x2显示,5x7点阵,8位数据接口
       Write_Cmd_1602(0x0c);               //设置开光标,0x0e光标不闪烁,不显示光标
       Write_Cmd_1602(0x06);               //屏幕左移关掉,写一个字符地址指针加1
       Write_Cmd_1602(0x01);               //清屏,显示清0,数据指针清0
    }
    我个人感觉在程序中用NOP延时是没有必要的。在仿真中读忙程序无法实现,所以我将仿真图上的读写脚直接拉低了。所以在每次写数据和写命令都需要延时等待液晶此时非忙
    xufenglei
    xufenglei
    中级会员
    中级会员

    帖子数 : 34
    威望 : 2
    注册日期 : 13-09-15

    1602显示两行字符

    帖子 由 xufenglei 于 2013-10-07, 9:35 pm

    延时短一些为好,我把程序的读写延时部分改的更短一些,现将改好的程序上传。
    附件
    4LCD1602显示两行字符.zip
    您无权下载这里的附件。
    (40 Kb) 下载4次
    Admin
    Admin
    管理员
    管理员

    帖子数 : 869
    威望 : 15
    注册日期 : 12-11-23
    年龄 : 26

    回复: 【源码征集】基于Proteus仿真的51单片机学习板

    帖子 由 Admin 于 2013-10-08, 12:19 am

    xufenglei 写道::延时短一些为好,我把程序的读写延时部分改的更短一些,现将改好的程序上传。
    恩,挺好的
    xufenglei
    xufenglei
    中级会员
    中级会员

    帖子数 : 34
    威望 : 2
    注册日期 : 13-09-15

    双机通信,中断方式,汇编

    帖子 由 xufenglei 于 2014-05-17, 9:09 pm

    已通过事迹硬件测试。发送与接受两个程序。
    附件
    中断双机通信.zip
    您无权下载这里的附件。
    (134 Kb) 下载4次
    Admin
    Admin
    管理员
    管理员

    帖子数 : 869
    威望 : 15
    注册日期 : 12-11-23
    年龄 : 26

    回复: 【源码征集】基于Proteus仿真的51单片机学习板

    帖子 由 Admin 于 2014-05-26, 11:32 am

    xufenglei 写道::已通过事迹硬件测试。发送与接受两个程序。

    proteus里也可以调试串口通信哟,只是要改仿真。不过蛮好玩的。得安装虚拟串口软件
    xufenglei
    xufenglei
    中级会员
    中级会员

    帖子数 : 34
    威望 : 2
    注册日期 : 13-09-15

    回复: 【源码征集】基于Proteus仿真的51单片机学习板

    帖子 由 xufenglei 于 2014-05-26, 10:09 pm

    虽然没送刀币,还是蛮开心的,毕竟楼主回复了。谢谢支持。
    Admin
    Admin
    管理员
    管理员

    帖子数 : 869
    威望 : 15
    注册日期 : 12-11-23
    年龄 : 26

    回复: 【源码征集】基于Proteus仿真的51单片机学习板

    帖子 由 Admin 于 2014-05-27, 7:00 am

    xufenglei 写道::虽然没送刀币,还是蛮开心的,毕竟楼主回复了。谢谢支持。

    现在坛子里管理人员还是很少,很多东西都没跟上。最后都会给补上的。多谢一直支持啊,有资料多分享,有啥学习心得也来分享一下。建设靠大家
    xufenglei
    xufenglei
    中级会员
    中级会员

    帖子数 : 34
    威望 : 2
    注册日期 : 13-09-15

    回复: 【源码征集】基于Proteus仿真的51单片机学习板

    帖子 由 xufenglei 于 2014-05-27, 3:36 pm

    串口也要备注一下最好,是最底层的汇编语言。

      目前的日期/时间是2019-03-27, 7:23 am