AD9850驱动程序(串行驱动)

发布者:zhihua最新更新时间:2015-08-13 来源: eefocus关键字:AD9850  驱动程序  串行驱动 手机看文章 扫描二维码
随时随地手机看文章
[转载]AD9850驱动程序(串行驱动)


#include
#include "intrins.h"
#define uchar unsigned char
#define uint unsigned int

sbit W_CLK= P1^0;
sbit PQ_UD= P1^1;
//sbit RET= P1^2;

uchar word[5]={0x00,0x00,0x00,0x00,0x00};
unsigned long int k=42.94967296*400;   //15000000就是所要输出的频率值,                                                            //若晶振不同为其他频率更改数值就行了

void chang(unsigned long int t)
{
word[1]=k>>24;
word[2]=k>>16;
word[3]=k>>8;
word[4]=k;
}

delay_1ms(uint t)
{
   uint i,j;
   for(i=0;i      for(j=0;j<120;j++);             
}

main()
{
    uint i;
  //  RET=1;
   delay_1ms(100);
   W_CLK=0;
   PQ_UD=0;
  // RET=0;
   chang(k);
   while(1)
   {
   
    for(i=0;i<5;i++)
    {
    P0=word[i];
    W_CLK=1;_nop_();
    W_CLK=0;_nop_();
    }
    PQ_UD=1;_nop_();
    PQ_UD=0;_nop_();
    }
}

关键字:AD9850  驱动程序  串行驱动 引用地址:AD9850驱动程序(串行驱动)

上一篇:点阵调试(附程序)
下一篇:51并行IO内部结构

推荐阅读最新更新时间:2024-03-16 14:28

基于RTX的舵机控制系统研制
    舵机控制是虚拟飞行实验中的关键技术,为满足测试的实时性要求,文中设计了一套基于Windows RTX环境下的舵机控制系统,通过采集天平、陀螺仪、舵机、光电编码器信号,分析飞机各主要部件的气动特性。该控制系统的主要功能包括:舵机控制软件可以自动完成对舵机的上电及解锁操作;舵机响应可根据实际需要作出相应的模式选择和参数设置;采集到的数据可做到实时界面显示,用于现场实验分析。 1 RTX实时模块     在工业控制、航空航天等领域,对系统实时性有很高的要求。系统的事件响应如果不确定或超时,就可能会导致系统出错,甚至崩溃,Windows系统很难满足实时性的要求。RTX正是应这一要求,利用Windows平台提供的丰富的设备驱动模
[嵌入式]
MC9S12XEP100 ATD模块 驱动程序
这几天在研究ATD模块,把芯片手册的ATD模块通读了好几遍,这里是本人对手册的翻译:http://blog.csdn.net/lin_strong/article/details/78286661。本以为完全理解了这个模块,结果一上手才发现还是有很多坑。目前已发现的坑已经写在.c文件里头了。也可能是因为封装模块时测试是用的芯片仿真才导致的那些坑,后面有空的话进行进一步的测试。 自己对ATD模块进行了一个简单的封装。发现网上流传的大部分示例都是使用同步的方式(轮询转换完成标志位)来获得结果,不符合我追求效率的强迫症性格,所以这个模块中,我是使用了异步事件通知的方式实现的。同时由于硬件提供的多通道方法不够灵活,通道间必须连续;于是
[单片机]
MC9S12XEP100 ATD模块 <font color='red'>驱动程序</font>
1_5.5.4_字符设备驱动程序之LED驱动程序_操作LED_P
在上一节的基础上修改代码,点亮led。 目的:写一个点灯的驱动。 框架; 完善硬件的操作 a.看原理图(确定引脚); b.看2440手册(确定配置); c.写代码:单片机:物理地址;驱动:虚拟地址(使用ioremap映射) 配置:GPFCON open 设置:GPFDAT write 1.建立两个变量 2.在加载时进行ioremap 3.卸载时再unmap 4.在open函数里面配置引脚 5.在write函数里面设置引脚 根据输入的数据控制引脚,如果是1就点灯,是0就关闭。 这里有一个用户空间向内核空间传递数据的函数。 这里buf和count就对应测试程序里面write函数的
[单片机]
1_5.5.4_字符设备<font color='red'>驱动程序</font>之LED<font color='red'>驱动程序</font>_操作LED_P
S35390驱动程序
/*******************************************************************/ /* 时钟芯片驱动程序 */ /*******************************************************************/ #include msp430x41x.h #include delay.h #include iodefine.h #include all_variable.h /****************************************************
[单片机]
(Time)DS1302时钟芯片驱动程序
DS1302的驱动是和应用是分开写的,这里的代码是DS1302的驱动: DS1302.H代码 #ifndef _DS1302_H_ #define _DS1302_H_ #include #include TYPEDEF.H // 宏定义是否为闰年 #define LEAP_YEAR_NO 0 //非闰年 #define LEAP_YEAR_YES 1 //闰年 //将二进制数转换为BCD数 #define BinToBCD(x) ( (((uint8)(x)/10) 4) + ((uint8)(x)) ) //将BCD数转换为二进制数 #define BCDToBin(x)
[单片机]
简单例子解析C语言编译器配置文件,驱动文件,驱动程序
配置文件,驱动文件,驱动程序对初学单片机C语言的童鞋来说极易搞昏,今天本人将以己昏昏,使人昭昭。 以LED动态扫描为例,看配置文件有什么: # include reg8052.h #ifndef __LED_DISPLAY_CFG_H #define __LED_DISPLAY_CFG_H //如果没有定义此文件,则定义此文件 # define __LED_DIN1_ON() p1^1=0 # define __LED_DIN1_OFF() p1^1=1 .......... ........... #define__LED-SEG(DATA) p0=DATA #endif 综上,所谓配置是定义了I/O口的作用。 驱动文件
[单片机]
Tiny210驱动之LCD驱动程序
lcd驱动源码: // 注意:本驱动是给S70的LCD写的驱动,若为其他的LCD,应该修改时钟和时序 #include linux/module.h #include linux/kernel.h #include linux/errno.h #include linux/string.h #include linux/mm.h #include linux/slab.h #include linux/delay.h #include linux/fb.h #include linux/init.h #include linux/dma-mapping.h #include linux/interrupt.h
[单片机]
【AT91SAM3S】SAM3S-EK Demo工程中,LCD驱动程序的加载
为了调试LCD,在英倍特的板子上烧Atmel的sam3s-ek_demo_1.4_source示例代码.LCD显示正常了,却找不到LCD的驱动究竟在哪。 花了好久,追踪到了这个执行过程。 进入main函数--_SetupHardware()----DISP_Initialize() ----_aDISP_Backends =&sDISP_Backend_ILI9325 ; static __no_init SDISPBackend* _aDISP_Backends ; _aDISP_Backends =&sDISP_Backend_ILI9325 ; 然后就是结构体: SDISPBackend是一个函数指针结构体。其定
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved