美文网首页
实验一 任钊锋0205

实验一 任钊锋0205

作者: 任钊锋0205 | 来源:发表于2018-05-20 22:03 被阅读32次

    1.了解大板单片机的应用,了解烧录软件和keil的使用

    2.汉字“后来的你”的显示

    keil代码

    //该板子上的点阵为8*8,只能显示简单的一些汉子,如果要显示真正的汉字//通过取模软件取的可以选择16*16点阵的板子#include#includesbit SRCLK=P3^6;sbit RCLK=P3^5;sbit SER=P3^4;//--定义要使用的IO口--//#define COMMONPORTSP0//--列选通控制--//unsigned char code TAB[8] = {0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//--点阵字码--//unsigned char code CHARCODE[4][8]={0x0e,0x10,0x37,0x55,0x55,0x57,0x50,0x90, //后0x02,0x54,0x78,0xff,0xFF,0x78,0x54,0x02, //来0x3F,0x55,0x95,0x1f,0x20,0xc8,0x45,0x7f, //的{0x20,0x7f,0xa4,0x4a,0xff,0x58,0x64,0x40} //中};void delay(unsigned int time){ unsigned int i,j; for(i=0;i>7;

    dat<<=1;

    SRCLK=1;

    _nop_();

    _nop_();

    SRCLK=0;

    }

    RCLK=1;

    _nop_();

    _nop_();

    RCLK=0;

    }

    /*******************************************************************************

    * 函数名        : main

    * 函数功能   : 主函数

    * 输入          : 无

    * 输出        : 无

    *******************************************************************************/

    void main()

    {

    unsigned char tab, j;

    unsigned int  i;

    while(1)

    {

    for(i= 0; i<50; i++ )  //两个字之间的扫描间隔时间

    {

    for(tab=0;tab<8;tab++)

    {

    Hc595SendByte(0x00);     //消隐

    COMMONPORTS = TAB[tab]; //输出字码

    Hc595SendByte(CHARCODE[j][tab]);

    delay(2);

    }

    }

    j++;

    if(j == 4)

    {

    j = 0;

    }

    }

    }

    点阵的设计和实现

    遇到的问题:16进制转换不熟练,上课没有好好听讲所以对于原理是临时抱佛脚学的,索幸在设计和实现上没有遇到太多问题,可是也少了很多自我探索的过程。感谢技术支持王政同学

    相关文章

      网友评论

          本文标题:实验一 任钊锋0205

          本文链接:https://www.haomeiwen.com/subject/uefxjftx.html