单片机C语言问题

我想把这个软件中的寄存器的值,用C语言编程编写到C8051F340的单片机程序中,使单片机开启后根据已编好的寄存器的值,进行初始化。应该怎样一个思路来写这个程序。求一个程... 我想把这个软件中的寄存器的值 ,用C语言编程 编写到 C8051F340的单片机程序中,使单片机开启后根据已编好的寄存器的值,进行初始化 。 应该怎样一个思路来写这个程序。 求一个程序开头。 谢谢啦,只有5分,全部献上。 展开
 我来答
廖星123
2015-10-19 · 超过16用户采纳过TA的回答
知道答主
回答量:83
采纳率:0%
帮助的人:50.2万
展开全部
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit lcden=P3^4;
sbit lcdrs=P3^5;//因为现在只是读r/w可忽略,默认是高电平
sbit wr=P3^6;//读写选择端,高为读取低为写入
sbit dula=P2^6;//又因为D0~D7接有锁全器所以要关闭数码管显示
sbit wela=P2^7;
uchar code table[]="I LOVE MCU !";//如果要写比较多的数据显示时可以用数据表直接引用
uchar code table1[]="www.txmcu.com";//单字符用',多字符的要用"直接引用
uchar num;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void write_com(uchar com)//命令(指令)的子函数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
晨曦月殇
2015-10-19 · TA获得超过972个赞
知道小有建树答主
回答量:146
采纳率:100%
帮助的人:93.1万
展开全部
这样子需要绑定寄存器的地址*(volatile unsigned int *)(gpio)=0x3000000; //绑定物理寄存器的地址;
这样写后你操作寄存器就可以gpio=xxx;直接给寄存器赋值了
追问
问的问题比较小白。 *(volatile unsigned int *)(gpio)=0x3000000 ,图上寄存器的值已经大于16位,是不是应该用code unsigned long[  ]=0x3000000.    你上面的(gpio)是什么意思呢。 0x3000000又是什么意思呢。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式