1.实验目的
学会用C语言进行简单程序设计。
2.实验要求
掌握编写排序程序。
3.实验内容
(1)设计一个对8个数据(0-255,任意设置)的由小到大排序程序。
(2)将结果显示在LCD显示器上。
#include #include "Config.h"
#include"1602.c"
void main(void)
{
WDT_Init(); //看门狗设置
Clock_Init(); //系统时钟设置
Port_init(); //系统初始化,设置IO口属性
delay_ms(100); //延时100ms
LCD_init(); //液晶参数初始化设置
LCD_clear(); //清屏
unsigned int a[10] = {6,4,1,0,5,7,3,2};
int i = 0;
int j = 0;
for(i = 0;i < 8; i++)
{
for(j = i+1; j < 8;j++)
{
if(a[i] > a[j])
{
int t = a[i];
a[i] = a[j];
a[j] = t;
}
}
}
while (1)
{
i = 1; //字符串输出显示
LCD_clear();
LCD_write_str(0,0,"Array");
for(i=0; i < 15; i++){
if(i % 2 == 0)
LCD_write_char(i,1, a[i/2]+'0');
else
LCD_write_char(i,1, '<');
}
delay_ms(2000);
}
}
关键字:MSP430 简单程序
引用地址:
MSP430简单程序设计
推荐阅读最新更新时间:2024-11-03 20:21
基于MSP430的车体自动调平系统
随着国防技术的发展,根据任务需求,越来越多的军用武器需要随时变更工作地点。为了保证这些军用武器的机动性能,往往以载车为运输载体,如火箭炮这样的大型武器就被安装在载车上。载车到达目的地后,借助平台快速将武器架设调至水平而后工作,工作完成后平台能够快速地撤收、转移。既保证了武器的工作性能,又提高了机动性。 传统上,主要依靠人工手动完成平台的水平度调节,这需要一部分人员手动调节千斤顶,另外一部分人员观察水平仪的水泡位置。这种调平方式费时费力,且精度低、抗倾覆能力差。随着调平时间和调平精度要求的提高,过去的调平方式已远远不能满足实际情况的需要,所需时间短、精度高、抗倾覆能力强的自动调平控制技术应运而生。 在军用方面,自动调平控制系统
[单片机]
MSP430 单片机内指针或结构体赋值为NULL,却有默认值的解决办法
在几天前的一个项目里我用单片机做了一个小的音游系统(暂时还没发出来),在里面遇到了很诡异的事情,首先这是我的音符结构体(就是音游里面能击打的那种音符): typedef struct note note; struct note { int notetype;//1为单键,0为长键 unsigned long create_time;//创建时间,单位为毫秒 unsigned int length;//音符长度,每次判定 unsigned int n_length;//现在音符剩余长度 }; 然后我去网上毛(?)了一个c语言的队列文件,这里也附上链接:https://blog.csdn.net/qq_
[单片机]
msp430f1232最小系统以及调试过程
最小系统如下: 其中32768Hz晶体振荡器上的两个电容可以不焊接。 为了看清楚msp430f1232管脚,给个大图 除了TDO,TDI,TMS,TCK,RST管脚和msp430 JTAG口对应线相连外,TEST管脚必须和msp430的TEST相连,否则会出现如下图: 有了这个管脚后,才能够测试出芯片型号,假设程序选择的型号和板子型号不一致,会出现如下图: 说明TEST管脚就是干这个事情的。一般说来看到上图,就表示JTAG的连接没问题了。 最小系统焊接图示: 特别提到的14PIN JTAG口转10PIN JTAG口图如下:
[单片机]
基于MSP430的便携式运动量及生理参数监测仪设计
随着我国经济和医疗卫生事业的快速发展,人们对自身的健康状况越来越关注,其健康理念已经逐渐从单纯“预防疾病”向“改善和促进健康”转变——即由“早发现、早诊断、早治疗”的二级预防向“利用各种健康促进手段来改善健康状况”的一级预防转变。与此相适应,智能化监护仪器作为健康管理和促进的重要手段已经成为一个新兴的应用领域和重要市场,每个人都可以通过一定的健康促进手段来对个人进行“健康管理”。本文所述的便携式运动量及生理参数监测仪就是一种可用于个人健康管理的智能化仪器,其设计理念和应用背景充分体现了我国新兴的健康管理产业的基本发展趋势。 系统设计 便携式运动量及生理参数监测仪能实时记录和监测人体的运动数据,并定量评估人体运动量和体能
[医疗电子]
MSP430系列单片机-Timer_A实现PWM
概念 PWM信号是一种具有固定周期、不定占空比的数字信号。 如果Timer_A的计数器工作在增计数模式,输出采用输出模式7(复位/置位模式) 利用寄存器TAxCCR0控制PWM波形的周期,用其他某个寄存器TAxCCRx来控制占空比(t高电平/ T周期) 题目 设ACLK = TACLK = LFXT1 = 32768Hz, MCLK = SMCLK = DCOCLK = 32 * ACLK = 1.048576MHz,利用Timer_A输出周期 512/32768 = 15.625ms,占空比分别为75%和25%的PWM矩波形。 代码如下: #include msp430x44x.h void main() {
[单片机]
基于MSP430单片机的电阻测量系统
在仪器仪表应用领域中,电阻测量是一个普遍的要求,本文将接受才用MSP430单片机实现电阻测量的系统,首先介少其硬件设计,然后介绍软件设计。 一般来说,只要知道电阻上的电压和刘静的电流就可以计算出电阻值,如果在已知电流的情况下,只要测出电阻上的电压就可以计算出电阻值,而电压的测量非常简单,采用MSP430单片机的A/D转换通道就可以完成,如下图1为系统的原理框图: 图1(系统的原理框图) 由图1可知该系统由电流源、放大器和跟随器组成恒流源。恒流源为系统提供恒定的电流,单片机只需要测试电阻上的电压就可以计算出电阻值。在本系统中,由于使用的是数字放大器,因此可以通过单片机来控制放大器的增益,从而使恒流源提供不同的电流输出,以
[单片机]
以MSP430F149为主控芯片的超低功耗智能火灾报警系统设计
引言 火灾严重威胁着人类的生命财产安全,每年我国由火灾引起的灾难数不胜数,然而,准确、及时的对火灾进行预测已成为迫在眉睫的事情。目前,火灾探测技术是预防火灾发生的最有效的手段,根据火灾发生初期的迹象来判断并进行预测,从而使人们在第一时间对这些迹象进行处理,有效的减少了火灾的发生。 普通可燃物燃烧的表现形式是:首先产生燃烧气体和烟雾,在氧气供应充足的条件下才能达到完全燃烧,产生火焰并发出一些可见光与不可见光,同时释放大量的热,使得环境温度升高。普通可燃物由初起阴燃阶段开始,到火焰燃烧、火势渐大,最终酿成火灾的起火过程。在该系统中我们以环境温度、烟雾浓度作为判断火灾的依据。 传统火灾报警系统有结构简单、准确度低、存在误报和漏报
[单片机]
MSP430中用位段定义自己的标志
在编写程序中,经常需要自己定义标志(位)。如果每个标志占用一个字节,会占用很大空间,可以用位段来实现,把若干个标志集中在一个存储单元中。 1.位段的定义 关于位段的定义,就不多说了,去查阅任何一本C语言的书都可以查到 2.微处理器中标志位的定义 对于MSP430,是16位处理器,可以一次读取16位的数据,标志位也可定义为16位的。 下面的定义将位段和共用体结合在一起用,因为共用体的长度取决于最长成员的长度,因此,可以在共用体中声明一个int成员,对它清0则可以清除整个标志字(覆盖)。 union FLAG { unsigned int BYTE; struct { unsigned b0:1; u
[单片机]