MCD2-DEMO 数码管显示PICC-18范例(适合初学者)

发布者:天涯拾遗最新更新时间:2017-12-10 来源: eefocus关键字:MCD2-DEMO  数码管显示  PICC 手机看文章 扫描二维码
随时随地手机看文章

/**************************************************************
实现的功能:在MCD2-DEMO上使数码管从左到右各显示0-5


芯片PIC18F452
编译器PICC-18


XT:4MHz
***************************************************************/

#include "pic18.h"
const unsigned char display_numb[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xd8,0x80,0x90};
unsigned char display_data[6];//0:L 5:R
/**************************************************************
端口初始化
LATC作为数码管段驱动(低有效)
LATA作为数码管位选择驱动(低有效)
***************************************************************/
void init_port(void)
{
  LATC=0xff;   //
  TRISC=0;   //C口当作数码管段,设置成输出
  ADCON1=0x07;
  TRISA=0;   //A口当作数码管位选择控制脚,设置成输出   
  LATA=0xff; 
}
/**************************************************************
延迟程序
***************************************************************/
void delay_1ms(void)
{
  unsigned int n;
  for(n=0;n<50;n++)
   {
    NOP();
   }
}
void delay_ms(unsigned int time)
{
  for(;time>0;time--)
   {
    delay_1ms();
   }
}
/**************************************************************
主程序
从左到右显示0-5
***************************************************************/
void main(void)
{
  unsigned char n;
  init_port();
  display_data[0]=display_numb[1];//2
  display_data[1]=display_numb[0];//1
  display_data[2]=display_numb[3];//4
  display_data[3]=display_numb[2];//3
  display_data[4]=display_numb[5];//6
  display_data[5]=display_numb[4];//5
  while(1)
   {
    LATA=0xfe;   
    for(n=0;n<6;n++)
     {
      LATC=display_data[n];
      delay_ms(1);
      LATA=(LATA<<1)+1;
     }
   }
}


关键字:MCD2-DEMO  数码管显示  PICC 引用地址:MCD2-DEMO 数码管显示PICC-18范例(适合初学者)

上一篇:877A软件模拟I2C通信读写24C02
下一篇:PIC单片机通讯例程

推荐阅读最新更新时间:2024-03-16 15:49

基于51单片机实现静态数码管显示
前言 前面我们已经介绍了如何控制51 单片机的IO 口输出高低电平,本教程我们通过另外一个实验来讲述51 单片机IO 口的输出。通过单片机的IO 口控制板载数码管显示。可以参考前面的实验章节内容。 一、数码管介绍 1.数码管简介 数码管是一种半导体发光器件,其基本单元是发光二极管。数码管也称LED数码管,不同行业人士对数码管的称呼不一样,其实都是同样的产品。数码管按段数可分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元,也就是多一个小数点(DP),这个小数点可以更精确的表示数码管想要显示的内容;按能显示多少个(8)可分为1 位、2 位、3 位、4 位、5 位、6 位、7 位等数码管。按发光二极管单元连接方
[单片机]
基于51单片机实现静态<font color='red'>数码管</font><font color='red'>显示</font>
51单片机实现带数码管显示的象棋比赛专用计时器
一、使用proteus绘制简单的电路图,用于后续仿真 二、编写程序 /******************************************************************************************************************** ---- @Project: LED-74HC595 ---- @File: main.c ---- @Edit: ZHQ ---- @Version: V1.0 ---- @CreationTime: 20200628 ---- @ModifiedTime: 20200629
[单片机]
51单片机实现带<font color='red'>数码管</font><font color='red'>显示</font>的象棋比赛专用计时器
凌阳61单片机使用7段数码管显示数字时钟的程序
#include SPCE061v004.h #include unspmacro.h //中断函数定义 void IRQ1(void) __attribute__((ISR)); void IRQ5(void) __attribute__((ISR)); void IRQ6(void) __attribute__((ISR)); enum { RUN, CHGSECOND, CHGMINUTE, CHGHOUR } clock_status; //时钟的状态 unsigned int hour,minute,second; unsigned int show_hour, show_minute, show_sec
[单片机]
数码管显示 0000-9999计数器
数码管显示0-9999计数器,两个按键,一个按键复位,一个按键累加计数。 要求提供程序和原理图 悬赏分:50 | 解决时间:2011-6-9 13:40 ;=========================================== 最佳答案: 用PROTEUS仿真的电路图,可以吗? 追问:可以的。 回答: 仿真电路图如下: 实际制作时,应采用共阳数码管,PNP三极管驱动“位”,还要有限流电阻。 ;=========================================== ;下列程序经过实验,可以满足题目要求. ORG 0000H LJMP MAIN ORG 0030H MAIN:
[单片机]
<font color='red'>数码管</font><font color='red'>显示</font> 0000-9999计数器
CEPARK AVR单片机 之HC595驱动数码管显示
这里我用的CEPARK 的M64 AVR开发板,这一课的重点是学会如何使用74HC595来驱动数码管。 74HC595是具有8位移位寄存器和一个存储器,三态输出功能。移位寄存器和存储器是分别的时钟。数据在SHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7 ),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能 OE时(为低电平),存储寄存器的数据输出到总线。 引脚说明: QA--QH: 八位并行输出端,可以直接控制数码管的8个段。 QH': 级联输出端。我将它接下
[单片机]
基于51单片机的四位数字频率计数码管显示设计
仿真原理图: 程序运行图: 部分程序: #include reg52.h #define uchar unsigned char #define uint unsigned int uchar duan ={0xc0,0Xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //所需的段的位码 //uchar wei ={0XEf,0XDf,0XBf,0X7f}; //位的控制端 (开发板) uchar wei ={0X80,0X40,0X20,0X10}; //位的控制端 (仿真) uint z,x,c,v, date; //定义数据类型 uint dispcount=0;
[单片机]
自制四位数码管显示的数字钟c程序
#include stc90.h #define uchar unsigned char uchar code shuzi ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xc0};//0 1 2 3 4 5 6 7 8 9 0 uchar code shuza ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0xc0};//0 1 2 3 4 5 0 uchar ss,dd,ff,gg,zz; uchar qq,ww,ee,rr,tt; uchar z,x,qw,qe,qr,as,fe; sbit a=P2^0;//锁存器1 sbit b=P2^1;
[单片机]
自制四位<font color='red'>数码管</font><font color='red'>显示</font>的数字钟c程序
基于HI-TECH C编译器的PICC18命令行驱动
PICl8F系列产品是美国微芯科技公司的高档产品,用户多采用C语言进行编程设计,HI-TECH SoftwarePty.Ltd.公司的PICC18编译器得到了广泛应用。大部分应用者使用MPLAB集成环境进行编程(见参考文献),在一些重要或大型应用的开发中有一些问题。例如,如何编写C语言的库文件,如何对有代码限制的程序进行编译等,若只是采用传统方式编程,则达不到应有的效果。本文所阐述的HI-TECH C编译器的PICC18命令行驱动,正是要解决这些问题。 1 HI-TECH C编译器 HI-TECH C编译器提供了C语言的标准特性,同时还加上许多为了适应PIC系列单片机的特定硬件特性而设计的扩展功能,并与汇编器集成在一起提供共享
[单片机]
基于HI-TECH C编译器的<font color='red'>PICC</font>18命令行驱动
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved