【TB作品】MSP430 G2553 单片机口袋板,读取单片机P1.4电压显示,ADC

2024-06-03 00:28

本文主要是介绍【TB作品】MSP430 G2553 单片机口袋板,读取单片机P1.4电压显示,ADC,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

功能

读取P1.4电压,显示到口袋板显示屏,电压越高亮灯越多。

部分程序

while (1){ADC10CTL0 |= ENC + ADC10SC;             // Sampling and conversion startLPM0;adcvalue = ADC10MEM;             //原始数据 0到1023adtest = (float) adcvalue / 1024.0 * 3.3;dis_num_6(adtest);             //显示电压//电压最大值最小值限制if (adcvalue <= min_YIN)adcvalue = min_YIN;if (adcvalue > max_YIN)adcvalue = max_YIN;//偏差值adcvalue = adcvalue - min_YIN;//总体范围temp1 = max_YIN - min_YIN;//每一段多少duan = temp1 / 8;//控制小灯怎么点亮if (adcvalue > duan * 7)             //0就是点亮 1就是不亮  这里表示8个灯全部亮{PinOUT(0, 0); /* 指定0号管脚输出为0 */PinOUT(1, 0); /* 指定1号管脚输出为0 */PinOUT(2, 0); /* 指定0号管脚输出为0 */PinOUT(3, 0); /* 指定1号管脚输出为0 */PinOUT(4, 0); /* 指定0号管脚输出为0 */PinOUT(5, 0); /* 指定1号管脚输出为0 */PinOUT(6, 0); /* 指定0号管脚输出为0 */PinOUT(7, 0); /* 指定1号管脚输出为0 */}else if (adcvalue > duan * 6)             //0就是点亮 1就是不亮  这里表示7个灯全部亮{PinOUT(0, 0); /* 指定0号管脚输出为0 */PinOUT(1, 0); /* 指定1号管脚输出为0 */PinOUT(2, 0); /* 指定0号管脚输出为0 */PinOUT(3, 0); /* 指定1号管脚输出为0 */PinOUT(4, 0); /* 指定0号管脚输出为0 */PinOUT(5, 0); /* 指定1号管脚输出为0 */PinOUT(6, 0); /* 指定0号管脚输出为0 */PinOUT(7, 1); /* 指定1号管脚输出为0 */}else if (adcvalue > duan * 5)             //0就是点亮 1就是不亮  这里表示6个灯全部亮{PinOUT(0, 0); /* 指定0号管脚输出为0 */PinOUT(1, 0); /* 指定1号管脚输出为0 */PinOUT(2, 0); /* 指定0号管脚输出为0 */PinOUT(3, 0); /* 指定1号管脚输出为0 */PinOUT(4, 0); /* 指定0号管脚输出为0 */PinOUT(5, 0); /* 指定1号管脚输出为0 */PinOUT(6, 1); /* 指定0号管脚输出为0 */PinOUT(7, 1); /* 指定1号管脚输出为0 */}else if (adcvalue > duan * 4)             //0就是点亮 1就是不亮  这里表示5个灯全部亮{PinOUT(0, 0); /* 指定0号管脚输出为0 */PinOUT(1, 0); /* 指定1号管脚输出为0 */PinOUT(2, 0); /* 指定0号管脚输出为0 */PinOUT(3, 0); /* 指定1号管脚输出为0 */PinOUT(4, 0); /* 指定0号管脚输出为0 */PinOUT(5, 1); /* 指定1号管脚输出为0 */PinOUT(6, 1); /* 指定0号管脚输出为0 */PinOUT(7, 1); /* 指定1号管脚输出为0 */}else if (adcvalue > duan * 3)             //0就是点亮 1就是不亮  这里表示4个灯全部亮{PinOUT(0, 0); /* 指定0号管脚输出为0 */PinOUT(1, 0); /* 指定1号管脚输出为0 */PinOUT(2, 0); /* 指定0号管脚输出为0 */PinOUT(3, 0); /* 指定1号管脚输出为0 */PinOUT(4, 1); /* 指定0号管脚输出为0 */PinOUT(5, 1); /* 指定1号管脚输出为0 */PinOUT(6, 1); /* 指定0号管脚输出为0 */PinOUT(7, 1); /* 指定1号管脚输出为0 */}else if (adcvalue > duan * 2)             //0就是点亮 1就是不亮  这里表示3个灯全部亮{PinOUT(0, 0); /* 指定0号管脚输出为0 */PinOUT(1, 0); /* 指定1号管脚输出为0 */PinOUT(2, 0); /* 指定0号管脚输出为0 */PinOUT(3, 1); /* 指定1号管脚输出为0 */PinOUT(4, 1); /* 指定0号管脚输出为0 */PinOUT(5, 1); /* 指定1号管脚输出为0 */PinOUT(6, 1); /* 指定0号管脚输出为0 */PinOUT(7, 1); /* 指定1号管脚输出为0 */}else if (adcvalue > duan * 1)             //0就是点亮 1就是不亮  这里表示2个灯全部亮{PinOUT(0, 0); /* 指定0号管脚输出为0 */PinOUT(1, 0); /* 指定1号管脚输出为0 */PinOUT(2, 1); /* 指定0号管脚输出为0 */PinOUT(3, 1); /* 指定1号管脚输出为0 */PinOUT(4, 1); /* 指定0号管脚输出为0 */PinOUT(5, 1); /* 指定1号管脚输出为0 */PinOUT(6, 1); /* 指定0号管脚输出为0 */PinOUT(7, 1); /* 指定1号管脚输出为0 */}else if (adcvalue > 50)             //0就是点亮 1就是不亮  这里表示1个灯全部亮{PinOUT(0, 0); /* 指定0号管脚输出为0 */PinOUT(1, 1); /* 指定1号管脚输出为0 */PinOUT(2, 1); /* 指定0号管脚输出为0 */PinOUT(3, 1); /* 指定1号管脚输出为0 */PinOUT(4, 1); /* 指定0号管脚输出为0 */PinOUT(5, 1); /* 指定1号管脚输出为0 */PinOUT(6, 1); /* 指定0号管脚输出为0 */PinOUT(7, 1); /* 指定1号管脚输出为0 */}else             //0就是点亮 1就是不亮  这里表示0个灯全部亮{PinOUT(0, 1); /* 指定0号管脚输出为0 */PinOUT(1, 1); /* 指定1号管脚输出为0 */PinOUT(2, 1); /* 指定0号管脚输出为0 */PinOUT(3, 1); /* 指定1号管脚输出为0 */PinOUT(4, 1); /* 指定0号管脚输出为0 */PinOUT(5, 1); /* 指定1号管脚输出为0 */PinOUT(6, 1); /* 指定0号管脚输出为0 */PinOUT(7, 1); /* 指定1号管脚输出为0 */}}
}// ADC10 interrupt service routine
#pragma vector=ADC10_VECTOR
__interrupt void ADC10_ISR(void)
{LPM0_EXIT;
}

全部的代码

https://docs.qq.com/sheet/DUEdqZ2lmbmR6UVdU?tab=BB08J2

这篇关于【TB作品】MSP430 G2553 单片机口袋板,读取单片机P1.4电压显示,ADC的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1025519

相关文章

SpringBoot读取ZooKeeper(ZK)属性的方法实现

《SpringBoot读取ZooKeeper(ZK)属性的方法实现》本文主要介绍了SpringBoot读取ZooKeeper(ZK)属性的方法实现,强调使用@ConfigurationProperti... 目录1. 在配置文件中定义 ZK 属性application.propertiesapplicati

RedisTemplate默认序列化方式显示中文乱码的解决

《RedisTemplate默认序列化方式显示中文乱码的解决》本文主要介绍了SpringDataRedis默认使用JdkSerializationRedisSerializer导致数据乱码,文中通过示... 目录1. 问题原因2. 解决方案3. 配置类示例4. 配置说明5. 使用示例6. 验证存储结果7.

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷

idea中project的显示问题及解决

《idea中project的显示问题及解决》:本文主要介绍idea中project的显示问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录idea中project的显示问题清除配置重China编程新生成配置总结idea中project的显示问题新建空的pr

电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案

《电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案》最近有不少兄弟反映,电脑突然弹出“mfc100u.dll已加载,但找不到入口点”的错误提示,导致一些程序无法正... 在计算机使用过程中,我们经常会遇到一些错误提示,其中最常见的就是“找不到指定的模块”或“缺少某个DL

如何使用 Python 读取 Excel 数据

《如何使用Python读取Excel数据》:本文主要介绍使用Python读取Excel数据的详细教程,通过pandas和openpyxl,你可以轻松读取Excel文件,并进行各种数据处理操... 目录使用 python 读取 Excel 数据的详细教程1. 安装必要的依赖2. 读取 Excel 文件3. 读

Spring Boot读取配置文件的五种方式小结

《SpringBoot读取配置文件的五种方式小结》SpringBoot提供了灵活多样的方式来读取配置文件,这篇文章为大家介绍了5种常见的读取方式,文中的示例代码简洁易懂,大家可以根据自己的需要进... 目录1. 配置文件位置与加载顺序2. 读取配置文件的方式汇总方式一:使用 @Value 注解读取配置方式二

基于Python实现读取嵌套压缩包下文件的方法

《基于Python实现读取嵌套压缩包下文件的方法》工作中遇到的问题,需要用Python实现嵌套压缩包下文件读取,本文给大家介绍了详细的解决方法,并有相关的代码示例供大家参考,需要的朋友可以参考下... 目录思路完整代码代码优化思路打开外层zip压缩包并遍历文件:使用with zipfile.ZipFil

解决Java中基于GeoTools的Shapefile读取乱码的问题

《解决Java中基于GeoTools的Shapefile读取乱码的问题》本文主要讨论了在使用Java编程语言进行地理信息数据解析时遇到的Shapefile属性信息乱码问题,以及根据不同的编码设置进行属... 目录前言1、Shapefile属性字段编码的情况:一、Shp文件常见的字符集编码1、System编码

利用Python实现添加或读取Excel公式

《利用Python实现添加或读取Excel公式》Excel公式是数据处理的核心工具,从简单的加减运算到复杂的逻辑判断,掌握基础语法是高效工作的起点,下面我们就来看看如何使用Python进行Excel公... 目录python Excel 库安装Python 在 Excel 中添加公式/函数Python 读取