当前位置: 首页 > news >正文

【TB作品】MSP430F149 单片机 音乐喷泉

功能

声音越大,亮的灯越多。
oled显示出当前的声音大小。

硬件接线

//OLED----MSP430
//VCC-----3.3V
//GND-----GND
//D0------P3.2
//D1------P3.0
//RES-----P2.0
//DC------P2.2
//CS------P8.1

led
P4八个引脚

adc
P6.0

部分代码

_EINT();while (1){adok_ifg = 1; /* 转换结束后变成0 */ADC12CTL0 |= ADC12SC;                   // Sampling opendelay_ms(500);while (adok_ifg == 1); /* 等待装换结束 */fute = adcvalue * 0.00805;xianshi[0] = fute % 100 / 10 + '0';xianshi[1] = '.';xianshi[2] = fute % 10 + '0';xianshi[3] = 'V';xianshi[4] = 0;OLED_ShowString(0, 0, xianshi);xianshi[0] = adcvalue % 10000 / 1000 + '0';xianshi[1] = adcvalue % 1000 / 100 + '0';xianshi[2] = adcvalue % 100 / 10 + '0';xianshi[3] = adcvalue % 10 + '0';xianshi[4] = 'X';xianshi[5] = 0;OLED_ShowString(0, 2, xianshi);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){P4OUT = 0X00;}else if (adcvalue > duan * 6){P4OUT = BIT7;}else if (adcvalue > duan * 5){P4OUT = BIT7 + BIT6;}else if (adcvalue > duan * 4){P4OUT = BIT7 + BIT6 + BIT5;}else if (adcvalue > duan * 3){P4OUT = BIT7 + BIT6 + BIT5 + BIT4;}else if (adcvalue > duan * 2){P4OUT = BIT7 + BIT6 + BIT5 + BIT4 + BIT3;}else if (adcvalue > duan * 1){P4OUT = BIT7 + BIT6 + BIT5 + BIT4 + BIT3 + BIT2;}else if (adcvalue > 50){P4OUT = BIT7 + BIT6 + BIT5 + BIT4 + BIT3 + BIT2 + BIT1;}else{P4OUT = 0XFF;}temp1 = max_YIN - min_YIN;temp2 = (float) adcvalue / (float) temp1 * 300;temp3 = temp2;temp1 = 210 + temp3;CCR1 = temp1; //设置为210到510xianshi[0] = 'P';xianshi[1] = 'W';xianshi[2] = 'M';xianshi[3] = temp1 % 10000 / 1000 + '0';xianshi[4] = temp1 % 1000 / 100 + '0';xianshi[5] = temp1 % 100 / 10 + '0';xianshi[6] = temp1 % 10 + '0';xianshi[7] = 0;OLED_ShowString(0, 4, xianshi);}
}// ADC12 interrupt service routine
#pragma vector=ADC12_VECTOR
__interrupt void ADC12_ISR(void)
{adcvalue = ADC12MEM0;adok_ifg = 0;}

全部代码

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

在这里插入图片描述

相关文章:

  • Spring Cloud工程添加子模块打包后文件为war包而非jar包
  • C语言小例程6/100
  • 【Linux】线程控制
  • MongoDB CRUD操作:地理位置查询
  • 操作系统教材第6版——个人笔记6
  • WPF国际化的最佳实践
  • SASS模块化与组织文件
  • 5-Maven-setttings和pom.xml常用配置一览
  • c#vb代码互转工具
  • SpringBoot+Vue校园管理系统(前后端分离)
  • MySQL分页:ROW_NUMBER() vs LIMIT
  • 【JMeter接口测试工具】第一节.JMeter简介和安装【入门篇】
  • vue 文件预览mp4、txt、pptx、xls、xlsx、docx、pdf、html、xml
  • SAP Build引言
  • AI绘画工具
  • CSS魔法堂:Absolute Positioning就这个样
  • JavaScript类型识别
  • js写一个简单的选项卡
  • Linux链接文件
  • tab.js分享及浏览器兼容性问题汇总
  • Vue 2.3、2.4 知识点小结
  • Vue 动态创建 component
  • 反思总结然后整装待发
  • 解析 Webpack中import、require、按需加载的执行过程
  • 前端js -- this指向总结。
  • 前端每日实战:70# 视频演示如何用纯 CSS 创作一只徘徊的果冻怪兽
  • 前嗅ForeSpider中数据浏览界面介绍
  • 十年未变!安全,谁之责?(下)
  • 实战|智能家居行业移动应用性能分析
  • 学习ES6 变量的解构赋值
  • 学习HTTP相关知识笔记
  • 数据可视化之下发图实践
  • 昨天1024程序员节,我故意写了个死循环~
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • ​MySQL主从复制一致性检测
  • # Maven错误Error executing Maven
  • # 计算机视觉入门
  • $LayoutParams cannot be cast to android.widget.RelativeLayout$LayoutParams
  • $分析了六十多年间100万字的政府工作报告,我看到了这样的变迁
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (14)Hive调优——合并小文件
  • (3)nginx 配置(nginx.conf)
  • (39)STM32——FLASH闪存
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (教学思路 C#之类三)方法参数类型(ref、out、parmas)
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (算法设计与分析)第一章算法概述-习题
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (转)VC++中ondraw在什么时候调用的
  • (转)母版页和相对路径
  • .NET CF命令行调试器MDbg入门(四) Attaching to Processes
  • .Net组件程序设计之线程、并发管理(一)
  • /etc/apt/sources.list 和 /etc/apt/sources.list.d
  • :not(:first-child)和:not(:last-child)的用法
  • @data注解_一枚 架构师 也不会用的Lombok注解,相见恨晚