❶ 谁有PIC单片机c语言开发入门的PDF给小弟发个,想学习下,希望一起交流下,我的邮箱:[email protected]
我也在找PIC单片机C语言开发入门的pdf,谁有的话也给我发一份 [email protected]
❷ pic单片机c语言程序设计实例精粹 电子版本
我有很多。。你给个邮箱。。。
❸ PIC单片机C语言编程的高手来帮帮忙啊!
你好,对于你这个问题其实也不是太难,不要在乎片子有多复杂,也不要在乎问题有多难,关键是勇于挑战他,你弄永远不行,程序是调试出来的,别人给你写的你不一定可以用得上。AD985X系列的DDS芯片大同小异,基本也就是协议问题。仔细看一下,手册上的介绍对你很有帮助,还有就是关于你选择的PIC的那款片子,也很简单,给你一个相关的程序参考一下,真的是大同小异无非是细节问题。这个没有人能帮到你,靠自己是最好的也可以学习很多东西。还是那句话程序师调试出来的
如果在调试过程中有什么问题请Hi我,常在线
AD9851的驱动程序
//头文件
#include "SPCE061A.h"
//变量说明
unsigned long int Freq_Ctrl_Word = 0x051eb851; //频率控制字 先传低位再传高位
unsigned int Phase_Ctrl_Word = 0x0000; //相位控制字 先传低位再传高位
unsigned int Order_Ctrl_Word = 0x0000;//b32:0 6倍频关闭 b33b34:00 电源工作模式
//定义AD9851与SPCE061A的接口
#define M_DATA 0x0001
#define M_UD 0x0002
#define M_CLK 0x0004
#define Set_IOA_Bit(x) (*P_IOA_Data = *P_IOA_Buffer | x) //置高
#define Clear_IOA_Bit(x) (*P_IOA_Data = *P_IOA_Buffer & ~x) //置低
//====================================================================
// ----Function: void Init_AD9851(void)
// -Description: 初始化与AD9851连接的IO口
// --Parameters: 无
// ------Return: 无
// -------Notes: 不影响其他IO口
//====================================================================
void Init_AD9851(void)
{
*P_IOA_Dir |= (M_DATA + M_UD + M_CLK);
*P_IOA_Attrib |= (M_DATA + M_UD + M_CLK);
*P_IOA_Data &= ~(M_DATA + M_UD + M_CLK);
}
//====================================================================
// ----Function: void Write_AD9851(void)
// -Description: 向AD9851写入频率控制字,命令控制字和相位控制字
// --Parameters: 无
// ------Return: 无
// -------Notes: 无
//====================================================================
void Write_AD9851(void)
{
unsigned long int mask = 0x0001;
unsigned int i;
Clear_IOA_Bit(M_UD); //M_UD置低
//送32位频率控制字
for(i = 0;i < 32;i++)
{
Clear_IOA_Bit(M_CLK); //M_CLK置低
if(Freq_Ctrl_Word & mask)
{
Set_IOA_Bit(M_DATA);
}
else
{
Clear_IOA_Bit(M_DATA);
}
Set_IOA_Bit(M_CLK);
mask = mask << 1;
}
//送3位的命令控制字
mask = 0x0001;
for(i = 0;i < 3;i++)
{
Clear_IOA_Bit(M_CLK); //M_CLK置低
if(Order_Ctrl_Word & mask)
{
Set_IOA_Bit(M_DATA);
}
else
{
Clear_IOA_Bit(M_DATA);
}
Set_IOA_Bit(M_CLK);
mask = mask << 1;
}
//送5位相位控制字
mask = 0x0001;
for(i = 0;i < 5;i++)
{
Clear_IOA_Bit(M_CLK); //M_CLK置低
if(Phase_Ctrl_Word & mask)
{
Set_IOA_Bit(M_DATA);
}
else
{
Clear_IOA_Bit(M_DATA);
}
Set_IOA_Bit(M_CLK);
mask = mask << 1;
}
Set_IOA_Bit(M_UD); //M_UD置高 ,产生上升沿 ,频率更新使能,输出有效
}
最后在说一下个人的理解,也就是DDS与MCU之间的接口问题,个人认为有点像SPI,只不过SPI的数据口是串行的,而在这这里是分时并行。主要问题就是协议,唯一的办法就是求助于数据手册,我刚出去查了一下,好像全是E文的,建议前期工作就是对照Google翻译这个数据手册,很有必要。
学习和创作的过程也很有趣,虽然很艰辛
❹ 求单片机C语言程序设计实训100例基于PIC+Proteus仿真pdf版 是书内容不是光盘程序
下载这个
http://wenku..com/view/47a19811cc7931b765ce15dd.html
❺ 活学活用PIC单片机C语言编程怎么样,好不好
挺好的。
初学者周立功的最适合!
❻ 求《单片机C语言程序设计实训100例:基于PIC+Proteus》pdf文件下载地址或发给我也行作者彭伟 电子工业出版
下载地址
❼ 请高手推荐下学习PIC单片机的教材,C语言的,谢谢!
北航的《PIC16系列单片机C程序设计与PROTEUS仿真》,除了C语言外,还有完整的PROTEUS仿真。
❽ PIC单片机 c语言编程
以DIP-40的PIC16F877A来举例 灯闪动频率为1秒
void Delay_Ms(unsigned char n);
void main(void)
{
while(1)
{
RA0 = 1;//2脚输出
//11脚是供电
RD2 = 1;//21脚输出
trisA = 0x04; //4脚RA2作为输入
if(RA2 == 0) //如果4脚为低电平
{
//执行代码
}
else //如果4脚为高电平
{
//执行代码
}
Delay_Ms(1000); //延时1秒
RA0 = 0;//2脚输出
//11脚是供电
RD2 = 0;//21脚输出
Delay_Ms(1000); //延时1秒
}
}
void Delay_Ms(unsigned char n) //延时程序
{
unsigned int i;
unsigned char j;
for(j=0;j<n;j++)
{
for(i=0;i<Fosc/44000;i++)
{
}
}
}
❾ PIC单片机用C语言编程的好点的教材有没有。
张明峰的《PIC单片机入门与实战》 北航出版社
我也卖PIC的开发板 160左右 [email protected]