资源简介
用MSP430F149编写的C语言DA控制程序,DAC8831,非常好用,输出的波形绝对符合你的要求!程序修改头文件就移植到MSP430F169/449等单片使用,非常方便有效!
代码片段和文件信息
#include
#include
#include
#define CS_H P1OUT|=BIT3
#define CS_L P1OUT&=~BIT3
#define SCLK_H P1OUT|=BIT4
#define SCLK_L P1OUT&=~BIT4
#define DIN_H P1OUT|=BIT5
#define DIN_L P1OUT&=~BIT5
unsigned int sin_table[40]=
{
32768 37893 42893 47643 52027 55937 59276 61963 63931 65131 65530
65132 63932 61964 59278 55939 52030 47646 42896 37896 32771 27645
22645 17894 13510 9600 6260 3573 1605 404 0 403 1602
3569 6255 9594 13503 17886 22636 27636
};
void init_clk()
{
unsigned char i;
BCSCTL1&=~XT2OFF; // 打开XT振荡器
BCSCTL2|=SELM1+SELS; // MCLK为8MSMCLK为1M
do
{
IFG1&=~OFIFG; // 清除振荡器错误标志
for(i=0;i<100;i++)
_NOP(); // 延时等待
}
while((IFG1&OFIFG)!=0); //如果标志为1,则继续循环等待
IFG1&=~OFIFG;
}
void DAC8831(unsigned int data)
{
unsigned char ij;
CS_L;
for(i=0;i<=15;i++)
{
SCLK_L;
j=data&0x8000;
if(j)
DIN_H;
else DIN_L;
SCLK_H;
data=data<<1;
}
CS_H;
}
void mian()
{
unsigned char i=0;
WDTCTL = WDTPW + WDTHOLD;
init_clk();
P1DIR=0XFF;
for(;;)
{
for(i=0;i<40;i++)
DAC8831(sin_table[i]);
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2513 2010-09-12 16:43 DAC8831\DAC8831.dep
文件 13743 2010-09-12 16:41 DAC8831\DAC8831.ewd
文件 46737 2010-09-12 16:43 DAC8831\DAC8831.ewp
文件 161 2010-09-12 16:11 DAC8831\DAC8831.eww
文件 10083 2010-09-12 16:41 DAC8831\Debug\Obj\main.r43
文件 1318 2010-09-12 16:17 DAC8831\main.c
文件 2160 2010-09-12 16:43 DAC8831\settings\DAC8831.cspy.bat
文件 63 2010-09-12 16:43 DAC8831\settings\DAC8831.dbgdt
文件 610 2010-09-12 16:43 DAC8831\settings\DAC8831.dni
文件 3906 2010-09-12 16:43 DAC8831\settings\DAC8831.wsdt
目录 0 2010-09-12 16:43 DAC8831\Debug\Exe
目录 0 2010-09-12 16:11 DAC8831\Debug\List
目录 0 2010-09-12 16:41 DAC8831\Debug\Obj
目录 0 2010-09-12 16:11 DAC8831\Debug
目录 0 2010-09-12 16:43 DAC8831\settings
目录 0 2010-09-12 16:41 DAC8831
----------- --------- ---------- ----- ----
81294 16
- 上一篇:矩阵连乘问题C++代码
- 下一篇:NTFS数据恢复的c++类代码
相关资源
- linux下的C语言POSIX正则表达式头文件和
- 基于C语言的AT指令代码实现
- C语言版的AT24C01~AT24C256的读写程序
- LDPC的C语言实现
- 后缀表达式求值c语言版
- linux环境下C语言实现图片的socket传输
- des算法的c语言实现c源代码
- C语言 地图染色 非递归 源代码
- C语言实现英汉、汉英词典功能
- 最新华为C语言编程规范
- c语言编程中点画线法
- LDPC算法C语言实现
- 学生信息管理系统c语言
- RSA加密算法c语言
- 个人账户管理系统修改版C语言版
- FFT C语言实现
- 基于c语言的多人聊天室系统
- 维吉尼亚密码的加密和解密C语言实现
- 循环赛问题c语言代码
- C语言实现socket服务端和客户端
- 单处理器系统的进程调度+操作系统(
- C语言实现链表通讯录
- 求有向图所有顶点的出度与入度
- 用C8051F单片机写的中断控制程序C语言
- 纯C语言写的打字母游戏
- 模拟Unix文件系统C语言版
- 控制走黑白线的寻迹小车c语言程序
- C语言程序设计 单词替换程序
- K-means聚类算法c语言实现支持任意维数
- c语言实现哲学家就餐问题
评论
共有 条评论