OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5607|回复: 6

一个项目用到了数码管(共阳)自己简单了测试了下,发现有问题。本人对AVR不熟,AVR一直是总监在搞

[复制链接]

15

主题

180

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
348
金钱
348
注册时间
2013-4-23
在线时间
25 小时
发表于 2013-5-8 09:25:29 | 显示全部楼层 |阅读模式
一个简单的程序,PC口输出段选信号,PA口4,5,6位选,测试发现PC口全部输出低电平的时候,总有几个脚呈高电平。比如PC=0的时候数码管不会显示8。
#include <mega32.h>   
#define led  ORTA.7
unsigned char aa[10]={0x7e,0x25,0x26}; 0,1,2,3 PC口
unsigned char bb[3]={0x60,0x50,0x30}; //位选PA4,5,6
unsigned char ii=0;
void delay(unsigned int i)
{
 while(--i);
}

// Declare your global variables here

void main(void)
{
// Declare your local variables here

// Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=Out Func5=Out Func4=Out Func3=In Func2=In Func1=In Func0=In 
// State7=T State6=0 State5=0 State4=0 State3=T State2=T State1=T State0=T 
PORTA=0x00; 
DDRA=0xF0;

// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In 
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T 
PORTB=0x00;
DDRB=0x00;

// Port C initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out 
// State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0 
PORTC=0x00;
DDRC=0xFF;

// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In 
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T 
PORTD=0x00;
DDRD=0x00;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;

// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

while (1)
      {
      // Place your code here
   for(ii=0;ii<3;ii++)
     {
       ORTA=bb[ii];
      PORTC=aa[ii]; 
      delay(50000); 
      }
    led^=1;
    delay(20000); 
      };   
}

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

15

主题

180

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
348
金钱
348
注册时间
2013-4-23
在线时间
25 小时
 楼主| 发表于 2013-5-8 10:03:03 | 显示全部楼层
搞定了,有原因是JTAG复用PC口,编程软件里使能了JTAG,勾掉之后调试正确了
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-5-8 10:32:29 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

4

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2013-5-10
在线时间
0 小时
发表于 2013-5-10 18:06:35 | 显示全部楼层
好多的代码啊  
IC采购-到中国IC超市网(http://www.icchaoshi.com)就“购”了
回复 支持 反对

使用道具 举报

15

主题

180

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
348
金钱
348
注册时间
2013-4-23
在线时间
25 小时
 楼主| 发表于 2013-5-10 22:28:45 | 显示全部楼层
回复【4楼】shishiba:
---------------------------------
嗯,编译软件建立工程的时候可以自动给出选择打开了哪些功能的模板,很多都是注释,很好理解的。省去了一个一个的去看寄存器再来设置寄存器的步骤。
回复 支持 反对

使用道具 举报

0

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2012-9-14
在线时间
2 小时
发表于 2013-5-11 23:14:28 | 显示全部楼层
这个是因为熔丝位设置的 问题。
我只是个过客。
回复 支持 反对

使用道具 举报

15

主题

180

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
348
金钱
348
注册时间
2013-4-23
在线时间
25 小时
 楼主| 发表于 2013-5-12 00:01:48 | 显示全部楼层
回复【6楼】ruoyuzhiji:
这个是因为熔丝位设置的 问题。
---------------------------------
设置熔丝里有个JTAG,勾了之后就好了的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-20 06:44

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表