X
首页
技术
模拟电子
单片机
半导体
电源管理
嵌入式
传感器
最能打国产芯
应用
汽车电子
工业控制
家用电子
手机便携
安防电子
医疗电子
网络通信
测试测量
物联网
最能打国产芯
大学堂
首页
直播
专题
TI 培训
论坛
汽车电子
国产芯片
电机驱动控制
电源技术
单片机
模拟电子
PCB设计
电子竞赛
DIY/开源
嵌入式系统
医疗电子
颁奖专区
【厂商专区】
【电子技术】
【创意与实践】
【行业应用】
【休息一下】
最能打国产芯
活动中心
直播
发现活动
颁奖区
电子头条
参考设计
下载中心
分类资源
文集
排行榜
电路图
Datasheet
最能打国产芯
stm32/stm8
[原创] STM32L4 TM7711驱动
xutong
2018-3-17 11:00
楼主
#include "ADC.h"
#include "stm32l4xx_hal.h"
void TM7711_Port_Init(void)
{
GPIO_InitTypeDef GPIO_InitStruct;
__HAL_RCC_GPIOC_CLK_ENABLE();
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_PULLUP;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
GPIO_InitStruct.Pin = GPIO_PIN_2;
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_PULLUP;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
GPIO_InitStruct.Pin = GPIO_PIN_3;
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
TM7711_SCK_L;
delay_ms(2);
}
unsigned long Read_TM7711(unsigned char next_select)
{
unsigned char i = 0;
unsigned long data_temp = 0;
for(i = 0;i < 24;i++)
{
TM7711_SCK_H;
data_temp <<= 1;
delay_us(5);
if(TM7711_SDA_R==1)
data_temp |= 1;
TM7711_SCK_L;
}
switch(next_select)
{
case CH1_10HZ:
TM7711_SCK_H;
delay_us(1);
TM7711_SCK_L;
break;
case CH1_40HZ:
TM7711_SCK_H;
delay_us(1);
TM7711_SCK_L;
delay_us(1);
TM7711_SCK_H;
delay_us(1);
TM7711_SCK_L;
delay_us(1);
TM7711_SCK_H;
delay_us(1);
TM7711_SCK_L;
break;
case CH2_TEMP:
TM7711_SCK_H;
delay_us(1);
TM7711_SCK_L;
delay_us(1);
TM7711_SCK_H;
delay_us(1);
TM7711_SCK_L;
break;
default:
break;
}
return(data_temp/5084); //5084 ´ú±í 3.3V»ù׼Ϡ1mv
}
此内容由EEWORLD论坛网友
xutong
原创,如需转载或用于商业用途需征得作者同意并注明出处
希望做一些大家觉得好用的东西!
点赞
回复评论 (3)
沙发
xutong
#ifndef _ADC_H
#define _ADC_H
#include <stm32l4xx_hal.h>
#include "stdio.h"
#include "delay.h"
#define CH1_10HZ 0x01
#define CH1_40HZ 0x02
#define CH2_TEMP 0x03
#define CH1_10HZ_CLK 25
#define CH1_40HZ_CLK 27
#define CH2_TEMP_CLK 26
#define TM7711_SCK_H HAL_GPIO_WritePin(GPIOC,GPIO_PIN_3,GPIO_PIN_SET);
#define TM7711_SCK_L HAL_GPIO_WritePin(GPIOC,GPIO_PIN_3,GPIO_PIN_RESET);
//#define TM7711_SDA_H HAL_GPIO_WritePin(GPIOC,GPIO_PIN_2,GPIO_PIN_SET);
//#define TM7711_SDA_L HAL_GPIO_WritePin(GPIOC,GPIO_PIN_2,GPIO_PIN_RESET);
#define TM7711_SDA_R HAL_GPIO_ReadPin(GPIOC,GPIO_PIN_2)
void TM7711_Port_Init(void);
unsigned long Read_TM7711(unsigned char next_select);
#endif
希望做一些大家觉得好用的东西!
点赞
2018-3-17 11:00
板凳
xutong
芯片手册上有51的 抄了一下 emmmm
希望做一些大家觉得好用的东西!
点赞
2018-3-17 11:01
4楼
一株草
看看,学习下
充放电数显全套方案,双口快充慢充检测电流电压,两线三线直流电压表,配套三个8尺寸15*8MM带AV电流电压单位专利数码屏,资料QQ2981074992 邮箱同上
点赞
2018-3-19 12:29
最新活动
报名直播赢【双肩包、京东卡、水杯】| 高可靠性IGBT的新选择——安世半导体650V IGBT
30套RV1106 Linux开发板(带摄像头),邀您动手挑战边缘AI~
安世半导体理想二极管与负载开关,保障物联网应用的稳健高效运行
免费申请 | 上百份MPS MIE模块,免费试用还有礼!
PI 电源小课堂|无 DC-DC 变换实现多路高精度输出反激电源
2024 瑞萨电子MCU/MPU工业技术研讨会——深圳、上海站, 火热报名中
随便看看
传感器硬件连接啊
wince上 怎么样PNG转成bmp呀?
数据采集电路由4-20MA转换成1-5V
STC89C52 串口发送XDATA区域数据很奇怪的问题!~
C6746 编译报错 INTERNAL ERROR: no match for ASG
用fpga实现uart
告诉大家一个良好习惯
EEWORLD大学堂----东南大学电力电子基础
滤波电路
TT50短信透明收发模块
有些关于LM358的中文资料
vc2005开发的智能设备ocx如何能在pc下vc2005智能设备下测试?
CE中总是出现e:\macallan\,但是又不存在这个文件夹。
TI Sitara入门培训资料分享2-AM335X工控应用网络扩展技术详解
线材在设备中使用简介
关于LQFP144的STM32,可以画成2层板吗?
第四届(1999年)全国大学生电子设计竞赛题目
单片机ADC的 输入阻抗
力挺430,学习、工作的好MCU!!!方法
PCB设计走线中途容性负载反射
电子工程世界版权所有
京B2-20211791
京ICP备10001474号-1
京公网安备 11010802033920号
回复
写回复
收藏
回复