/*本程序适用于没有SIP功能的单片机添加SIP发送功能*/

#include

__CONFIG(0x1832);        

//芯片配置字,看门狗关,上电延时开,掉电检测关,低压编程关,加密,4M晶体HS振荡 #define clk P10                                        //定义时钟管脚

#define clk RC3         //定义时钟管脚

#define dio RC5        //定义数据管脚

#define stb RC2        //定义片选管脚

//#define nop _nop_();

#define uchar unsigned char

#define uint  unsigned int

const char TABLE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,

                    0x77,0x7c,0x39,0x5e,0x79,0x71,0xE0,0x5C,0x3E,0x78,

                    0x37, 0x76, 0x38, 0x01, 0x41, 0x49,0x00};


unsigned char store_bank[4];  //建立数据列队3

//初始化函数体

void init()

   {

     ADCON1=0X07;

     TRISA=0X30;

     TRISB=0X03;

     TRISC=0X10;

     TRISD=0X00;

     PORTD=0XFF;

//    SSPSTAT=0X80;

//    SSPCON=0X31;

     INTCON=0X00;

     PIR1=0X00;

     stb=0;

   }

//---------------------TM1616发送1字节数据子程序------------------------------------------

void tm1616write(uchar wr_date)

{

        uchar i;

        stb =0; //片选管脚

        NOP();

        NOP();

        for(i=0;i<8;i++)//循环运行8次

        {

                clk=0;  //时钟管脚

                NOP();

                NOP();

                if(wr_date&0x01!=0)//查看数据的最小位是否为0

                {

                        dio=1; //数据管脚

                }

                else

                {

                        dio=0;//数据管脚

                }

                NOP();

                NOP();

                clk=1;  //时钟管脚

                NOP();

                wr_date=wr_date>>1;//数据左移1位

        }        

}

//-------------------------TM1616采用固定地址显示数据子程序---------------------------------

void tm1616show(uchar data1,uchar data2,uchar data3,uchar data4)

{       uchar j;

        stb = 1;  //片选管脚

        clk = 1;  //时钟管脚

        dio = 1;  //数据管脚

        tm1616write(0x00); //显示模式设置,设置为4个GRID,7个SEG

        stb=1;      //片选管脚       //显示模式设置完毕,STB置1

        tm1616write(0x44); //数据命令设置,设置普通模式、固定地址、写数据到显示寄存器

        stb=1;   // 片选管脚//数据命令设置完毕,STB置1

                tm1616write(0xC0); //设置显示地址1

                tm1616write(data1);//传输显示数据1

                stb=1;     //片选管脚        //显示数据1发送完毕STB置1

                tm1616write(0xC2);//设置显示地址1

                tm1616write(data2);//传输显示数据1

                stb=1;     //片选管脚        //显示数据1发送完毕STB置1

                tm1616write(0xC4); //设置显示地址1

                tm1616write(data3);//传输显示数据1

                stb=1;     //片选管脚        //显示数据1发送完毕STB置1

                tm1616write(0xC6); //设置显示地址2

                tm1616write(data4);//传输显示数据1

                stb=1;      //片选管脚       //显示数据1发送完毕STB置1

        tm1616write(0x8F);         //控制命令设置,设置显示开、显示最亮

        stb=1;              //片选管脚      //显示数据发送完毕STB置1

}

//T毫秒延时程序'''''''''''''''''''''''''''''''''''''''''''

void  DELAY(unsigned int t )              //延时程序

    {unsigned int y;

     while(t)

     { 

     for(y=98;y--;);     //延时

     t--;

    }}

//运算------------------------------------

void count(uint y)

  {uchar ca;

   ca=y/0x64/0xa;    //求千位数/100=10数据/10等于一个千位数字 余数扔掉

   store_bank[3]=TABLE[ca];

   ca=(y/0x64)%0xa;    //千位数/100留下百位以下数据

   store_bank[2]=TABLE[ca];

   ca=(y%0x64)/0xa;     //求显示的个位

   store_bank[1]=TABLE[ca];

   ca=(y%0x64)%0xa;     //求显示的个位

   store_bank[0]=TABLE[ca];

  }           

//TM1616主函数体---------------------------------------------

void main(void)

{ uint k;

   init();

        while(1)

        { for(k=0;k<9999;k++)

              {count(k);

                tm1616show(store_bank[3],store_bank[2],store_bank[1],store_bank[0]);  //带数据 

                 DELAY(50);

              }   


关键字:PIC单片机  驱动TM1616  SIP功能 引用地址:PIC单片机驱动TM1616源程序

上一篇:PIC16F877A编程PID+PWM+1602液晶显示
下一篇:编的PIC16f1936的超声波测距的程序

推荐阅读

集微网消息,今天是黑鲨游戏手机Helo发布的日子,关于它的外观配置想必大家都知道了,我们来回顾一下。黑鲨游戏手机Helo的入网型号为AWM-A0,新外形依然是典型的游戏手机风格,相比现款黑鲨手机来说,其摄像头从横排双摄变成了中置竖排双摄,指纹识别也从前置变成了后置,该机还提供比较炫酷的呼吸灯,具备多种RGB闪烁效果,整体效果十分出众。具体数据方...
1、名字解释:ABI,application binary interface (ABI),应用程序二进制接口。2、编译版本问题: GCC 4.0 为分界线 4.0版本以下,由于采用OABI接口,其对浮点的支持不太好 4.0版本以上,采用了新的EABI接口,其对软浮点和硬浮点的支持都比较好。考虑在4.0版本以下时,其支持的ARM内核大多数没有硬浮点,所以可以分析资料比较少,现在重点关注4...
科创板日报报道,华为发布的2020 Q3财报显示,2020年前三季度,公司实现销售收入6713亿元人民币,同比增长9.9%,净利润率8.0%。2020年前三季度业务经营结果基本符合预期。华为称,“下一阶段我们将充分利用华为在AI、云、5G、计算等ICT技术的能力,联合伙伴提供场景化解决方案、发展行业应用,释放5G网络红利,帮助企业实现商业成功,帮助政府实现兴业、...
10月23日,水晶光电发布2021年第三季度业绩报告。公告显示,水晶光电第三季度实现营业收入11.34亿元,同比增长27.02%;归属于上市公司股东的净利润1.79亿元,同比增长34.55%;归属于上市公司股东的扣除非经常性损益的净利润1.73亿元,同比增长50.45%;基本每股收益0.13元。2021年前三季度,水晶光电实现营业收入28.55亿元,同比上升26.35%;归母净利润3.54...

史海拾趣

问答坊 | AI 解惑

关于无功功率——让你了解更多

交流电路中,由电源供给负载的电功率有两种;一种是有功功率,一种是无功功率。   有功功率是保持用电设备正常运行所需的电功率,也就是将电能转换为其他形式能量(机械能、光能、热能)的电功率。比如:5.5千瓦的电动机就是把5.5千瓦的电能转换为 ...…

查看全部问答∨

EDA技术应用前景

电子设计的必由之路是数字化, 这已成为共识。在数字化的道路上, 我国的电子设计技术经历了并将继续经历许多重大的变革。从应用小规模集成电路(SS I) 芯片构成电路系统, 到广泛地应用微控制器或单片机(MCU ) , 在电子系统设计上发生了具有里程碑意义 ...…

查看全部问答∨

將NandFlash做為USB disk不能被PC正常識別的問題.

我的NandFlash共256M,在Eboot中做成兩個Partition,一個是BNFS,一個是DOS32(FAT),啟動後在WinCE的存儲管理器中能看到"DSK1:"下有兩個分區:Part00和Part01,且讀寫正常.     然後設置[HKEY_LOCAL_MACHINE\\Drivers\\USB\\FunctionDrive ...…

查看全部问答∨

使用AT命令 实现modem拨号连接 遇到问题

我现在使用TM-IP5600 modem 用系统带的拨号软件能拨号成功,我现在想通过AT命令拨号ATDT996169 后返回 CONNECT 28800 V42bis ********************************* * Quidway A8010 Internet Server * * welcome!!        ...…

查看全部问答∨

USB HOST 如何自动挂载外设

s3c2440+windows ce5.0 用host端口去挂载一个usb接口的外设 为什么不能自动挂载(系统起来后,自动识别usb),要热插拔才能识别。…

查看全部问答∨

msp430 IAR 程序运行中被复位

我运行main前面的汇编程序段,单步执行的时候,程序运行到_data16_memcpy中时,在copy了几个数据后程序忽然跳到cstart_begin开始的地方 但是循环还没有结束   另外:   我注释掉程序中一句,貌似就不会跑飞,可以正常进入main()了 ...…

查看全部问答∨

LWIP不收包,请各位看看程序,小弟有礼了

自己飞线焊的9B96的板子,这两天在看SAFERTOS+LWIP,突然网络就就不正常了,可以发数据,但不能收数据。 为了验证一下什么问题,使用academic在https://bbs.eeworld.com.cn/thread-222963-1-2.html中的程序试了一下,还是不能收数据, 通过udp_rec ...…

查看全部问答∨

Open1081 第二周来熟悉外设/API

    里面虽然是一个标准的芯片,但是分了几个区段. 0x08000000 - 0x08003FFF 是Bootloader,可以改,调试时候不推荐改.0x08004000 - 0x0800BFFF 是OTA信息.0x0800C000 - 0x08060000 是用户自由分配程序区段.0x08060000 - 0x080C0000 是OTA ...…

查看全部问答∨

关于回复帖子,这是不是一个bug?

本帖最后由 ienglgge 于 2014-12-31 22:50 编辑 楼主发帖,二楼有人回帖,我点击二楼的贴子的回复。   在回复的框里,我的鼠标点进了对方的贴子的内容。光标在他的发言区域里。这时,我再输入内容。他发的言就变成我的内容的一部分。 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved