proteus仿真arduino测电阻,数码管显示

最近在做电子系统设计的课。我比较懒,不想搞具体的电路,所以直接去找了arduino的了。后面来描述下操作步骤。

1.在proteus中导入arduino库

下载链接及说明:

https://hanbaoaaa.xyz/index.php/archives/124/k.html

2.绘制如图电路

3.程序



byte numDigits = 4; //数码管位数
byte digitPins[] = {11, 10, 9, 8}; //数码管公共极连接Arduino的引脚
byte segmentPins[] = {A1, A2, A3, A4,A5 , 0, 1, 2}; //数码管a,b,c,d,e,f,g,dp对应引脚
//根据共阴极数码管段码表定义0~9显示的各段开关状态
int numTable[10][8] = {
//1为点亮,0为关闭
//a  b  c  d  e  f  g  dp
{1, 1, 1, 1, 1, 1, 0, 0},     //0
{0, 1, 1, 0, 0, 0, 0, 0},     //1
{1, 1, 0, 1, 1, 0, 1, 0},     //2
{1, 1, 1, 1, 0, 0, 1, 0},     //3
{0, 1, 1, 0, 0, 1, 1, 0},     //4
{1, 0, 1, 1, 0, 1, 1, 0},     //5
{1, 0, 1, 1, 1, 1, 1, 0},     //6
{1, 1, 1, 0, 0, 0, 0, 0},     //7
{1, 1, 1, 1, 1, 1, 1, 0},     //8
{1, 1, 1, 1, 0, 1, 1, 0},     //9
};


void setup()
{
  for (int i = 0; i < 8; i++)
  {
  pinMode(segmentPins[i], OUTPUT); //设置4~11引脚为输出模式
  }
  for(int i=0;i<4;i++){
  pinMode(digitPins[i], OUTPUT); //设置4~11引脚为输出模式
  }
}
char numbuffer[4]={1,3,2,4};
void loop()
{
  long n = analogRead(A0);
  n=100*(1023-n)/n+1;
  numbuffer[0]=n%10;
  numbuffer[1]=n/10%10;
  numbuffer[2]=n/100%10;
  numbuffer[3]=n/1000%10;
  for (int j = 0; j < 4;j++)//扫描数码管
  {
    digitalWrite(digitPins[j], HIGH); //设置a 引脚的电平
    digitalWrite(segmentPins[0], !numTable[numbuffer[j]][0]); //设置a 引脚的电平
    digitalWrite(segmentPins[1], !numTable[numbuffer[j]][1]); //设置b 引脚的电平
    digitalWrite(segmentPins[2], !numTable[numbuffer[j]][2]); //设置c 引脚的电平
    digitalWrite(segmentPins[3], !numTable[numbuffer[j]][3]); //设置d 引脚的电平
    digitalWrite(segmentPins[4], !numTable[numbuffer[j]][4]); //设置e 引脚的电平
    digitalWrite(segmentPins[5], !numTable[numbuffer[j]][5]); //设置f 引脚的电平
    digitalWrite(segmentPins[6], !numTable[numbuffer[j]][6]); //设置g 引脚的电平
    digitalWrite(segmentPins[7], !numTable[numbuffer[j]][7]); //设置dp引脚的电平
//    for (int i = 0; i < 10; i++)//以此显示数字0到9
//    {
//    
delay(2);
//    }
    digitalWrite(digitPins[j], LOW); //设置a 引脚的电平
  }

}

4.说明

  • adc为10bit 范围 0-1023
  • arduino中编译后获取hex等编译生成文件

文件 -》首选项 -》

打开最后那个preference.txt,加入一行 build.path=d:\arduino

路径即为hex文件生成的位置

© 2021 hanbaoaaa record.浙ICP备20005263号
asdad
联系方式 asdasd
2021-5-8 4:19
sss
回复数 (0) 点击展开
加载更多

新增评论

称呼
联系方式
邮箱(选填)
内容

提交

取消