嘉立创产业服务站群
发作品签到
专业版

CW32-电压电流表

工程标签

80
0
0
0

简介

基于立创开发板-CW32F030的电压电流表

简介:基于立创开发板-CW32F030的电压电流表
电压电流表训练营【立创开发板&CW32】

开源协议

GPL 3.0

创建时间:2024-07-20 09:07:24更新时间:2024-08-28 06:26:33

描述

视频链接:

B站视频--功能演示及介绍

描述

本项目是基于CW32F030的电压电流表,具有电压电流表测量的功能
约测量电压范围:0-30V (可模拟测试)
约测量电流范围:0-3A (可模拟测试)
完成品照片如下
1724599452525(1).png

第一次使用3D打印加面板打印,稍微有一点翻车,不过还好整体不咋影响。
这次使用的全部都是插件式的元器件,下面是我焊接过程的图片
插接所有元件
d64a6ac0cb8d9fa90d608ab9cab7cb8(1).jpg
一张正面的全家福,不!还缺少几个插件没到货
d8406227fe619c68403e9c253b5b0b5(1).jpg
画的很随意,彩色丝印的功能只是留给立创开发板和芯源半导体了。
PCB也基本是根据官方的来的,摆放布局走线方式等等。
硬件供电采用DC-DC输入电压5V-12V即刻
重点来了:这个32芯片具有:12位高速ADC 可达到±1.0LSB INL 11.3ENOB 有多种Vref参考电压,我们常用的STM32仅支持VDD=Vref。本次采用的是内置1.5V的参考电压,该参考电压可以通过程序进行配置;
在元器件采购上面翻了一个错误,数码管本来是要采购共阴极的数码管,一不小心买成了共阳极的数码管了。我就说程序下载后,数码管有问题,经过寻找问题竟然是采购错了。下面是修改成共阳极数码管的部分程序:

/*  共阳数码管编码表:
 0xc0   0xf9   0xa4  0xb0  0x99  0x92  0x82  0xf8  0x80  0x90 
  0      1      2     3     4     5     6     7     8     9 
 0x40   0x79   0x24  0x30  0x19  0x12  0x02  0x78  0x00  0x60           
  0.     1.     2.    3.    4.    5.    6.    7.    8.    9.          
 0x3f               0xbf
 0 0 1 1  1 1 1 1   1011 1111
dp G F E  D C B A   
*/
uint8_t Seg_Table[21] = {0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90,
                         0x40, 0x79, 0x24, 0x30, 0x19, 0x12, 0x02, 0x78, 0x00, 0x60,0x08};// 0x08:A.
// 公共端的设置:
/**
 * @brief 关闭所有公共端
 * 
 */
void Close_Com(void)
{
  GPIO_WritePin(CW_GPIOA,GPIO_PIN_8,GPIO_Pin_RESET);    
	GPIO_WritePin(CW_GPIOB,GPIO_PIN_3,GPIO_Pin_RESET);    
	GPIO_WritePin(CW_GPIOB,GPIO_PIN_4,GPIO_Pin_RESET);    
  GPIO_WritePin(CW_GPIOA,GPIO_PIN_11,GPIO_Pin_RESET);   
	GPIO_WritePin(CW_GPIOA,GPIO_PIN_12,GPIO_Pin_RESET);   
	GPIO_WritePin(CW_GPIOA,GPIO_PIN_15,GPIO_Pin_RESET);   
}
// Seg_Dis函数中的修改
switch(Pos)
	{
	  case 0:
      GPIO_WritePin(CW_GPIOA,GPIO_PIN_8,GPIO_Pin_SET);  //PA8,COM1
      break;
    case 1:
		  GPIO_WritePin(CW_GPIOA,GPIO_PIN_11,GPIO_Pin_SET);  //PA9,COM2
      break;
    case 2:
		  GPIO_WritePin(CW_GPIOA,GPIO_PIN_12,GPIO_Pin_SET);  //PA10,COM3
      break;
		case 3:
		  GPIO_WritePin(CW_GPIOA,GPIO_PIN_15,GPIO_Pin_SET);  //PA11,COM4
      break;
    case 4:
		  GPIO_WritePin(CW_GPIOB,GPIO_PIN_3,GPIO_Pin_SET);  //PA12,COM5
      break;
    case 5:
		  GPIO_WritePin(CW_GPIOB,GPIO_PIN_4,GPIO_Pin_SET);  //PA15,COM6
      break;
		default:
      break;
	}

全部修改成共阴极的就OK啦
其实数码管还是很好理解的,我贴一下以前我上学的时候记得笔记,当时是用IO口驱动三极管,三极管驱动数码管的,当时还用到了STM32的PB4引脚,这个引脚是需要配置复用功能才可以当做普通GPIO来使用的。

e835a3d1da703c60a695ddf8c0a0de7.jpg

e5c5e5de04db376278cc06d2af83bc1.jpg
程序中全部加入注释,方便小白阅读理解,请下载附件中的程序自行查阅。
讲到这里,也差不多了,祝自己和大家都能够更上一层楼吧!

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

附件

序号文件名称下载次数
1
电压电流表工程.zip
8
2
演示视频.mp4
0
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

评论

全部评论(1)
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航