打印

关天PIC18F4550的配置字问题!!

[复制链接]
6433|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
win2000_li|  楼主 | 2008-2-16 20:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
小弟对PIC18F4550的配置字方面有些不懂.

在PIC16FXXX系列中头文件里有如下:
在C文件中直接调用__CONFIG (HS & UNPROTECT & PWRTEN & BORDIS & WDTEN);
就可以了,可是在PIC18F4550里头文件里没有关于这方面的定义。
请哪位高手用过的,请指点。
(现在用编译环境里直接选定相应的菜单,每次重新开IDE里都要重新设置。)
所以想用代码方式在main里直接定义。

请问如果做才能行啊????
判指点······

/*振荡器配置*/
#define RC 0x3FFF // RC 振荡
#define HS 0x3FFE // HS 模式
#define XT 0x3FFD // XT 模式
#define LP 0x3FFC // LP 模式
/*看门狗配置*/
#define WDTEN 0x3FFF // 看门狗打开
#define WDTDIS 0x3FFB // 看门狗关闭
/*上电延时定时器配置*/
#define PWRTEN 0x3FF7 // 上电延时定时器打开
#define PWRTDIS 0x3FFF // 上电延时定时器关闭
/*低电压复位配置*/
#define BOREN 0x3FFF // 低电压复位允许
#define BORDIS 0x3FBF // 低电压复位禁止
/*代码保护配置*/
#define UNPROTECT 0x3FFF // 没有代码保护
#define PROTECT 0x3FEF // 程序代码保护
沙发
lifengtao| | 2008-2-16 22:17 | 只看该作者

我都是在烧写芯片时才定义啊

使用特权

评论回复
板凳
兰天白云| | 2008-2-16 23:35 | 只看该作者

搜一下本版,已有说明

使用特权

评论回复
地板
win2000_li|  楼主 | 2008-2-17 13:19 | 只看该作者

谢谢!!!

我用的是MCC18 2.40,IDE用的MICRCHIP IDE 7.41

我看其它的PIC18FXXXX单片机是这样定义的.

#pragma romdata CONFIG
_CONFIG_DECL(_CONFIG1H_DEFAULT & _OSC_HS_1H,
             _CONFIG2L_DEFAULT &_BOR_OFF_2L&_BORV_25_2L&_PWRT_ON_2L,
             _CONFIG2H_DEFAULT & _WDT_ON_2H,
             _CONFIG3H_DEFAULT,
                 _CONFIG4L_DEFAULT &_STVR_OFF_4L& _LVP_OFF_4L,
                 _CONFIG5L_DEFAULT,
             _CONFIG5H_DEFAULT,
                 _CONFIG6L_DEFAULT&_WRT0_ON_6L&_WRT1_ON_6L&_WRT2_ON_6L&_WRT3_ON_6L,
             _CONFIG6H_DEFAULT,
             _CONFIG7L_DEFAULT,
             _CONFIG7H_DEFAULT);
#pragma romdata


我的这个是不是也可以参考这个来定义吗????

或者说微星有没有标准的PIC18F4550配置字的头文件!!!!

使用特权

评论回复
5
xieyuanbin| | 2008-2-17 16:22 | 只看该作者

CONFIG的配置方法在MPALB的帮助中有

你可以查一下,C和ASM都有说明。另外对于每个型号,其器件INC文件中的最后也有详细定义

使用特权

评论回复
6
xieyuanbin| | 2008-2-17 16:23 | 只看该作者

实在不行,MPLAB的安装目录下有例程

可以拿来看看。

使用特权

评论回复
7
win2000_li|  楼主 | 2008-2-17 19:01 | 只看该作者

帮我看一看!!!

现在有一个怪事,我在头文件里没有定义以下的名字.
但是编译可以通过,并且在编译后,再打开配置选项后,发现启作用了.
但是,#pragma config OSC = HS是编译不能通过.
这是为什么呢???
请指点!!!!!!

#pragma config PWRT = OFF
#pragma config BOR = OFF
#pragma config WDT = OFF
#pragma config LVP = OFF

使用特权

评论回复
8
win2000_li|  楼主 | 2008-2-17 19:26 | 只看该作者

怪事啊!!!

这些都可以,为什么FCMEN不行啊!!!还有OSC不行啊.

真是搞不懂,哪位兄弟搞过,请指点啊!!!!

使用特权

评论回复
9
systemchip| | 2008-2-17 21:26 | 只看该作者

写法错误

#pragma config FOSC = HS
#pragma config FCMEN = ON

使用特权

评论回复
10
l0p0c| | 2008-2-21 13:12 | 只看该作者

看数据手册,其实很清楚的!

使用特权

评论回复
11
win2000_li|  楼主 | 2008-2-21 13:48 | 只看该作者

谢谢!!!!!!!!!!

不会吧!!!我看一看!!!

使用特权

评论回复
12
hahahaluo| | 2008-2-21 14:22 | 只看该作者

这是我的config,

#include <p18f2480.h> 
#include <config.h> //调用配置文件

//配置位的宏调用-----------------------------------
#pragma romdata CONFIG
_CONFIG_DECL
(
_CONFIG1H_DEFAULT & _OSC_HS_1H,//HS振荡器
_CONFIG2L_DEFAULT,
_CONFIG2H_DEFAULT & _WDT_OFF_2H,//关闭看门狗
_CONFIG4L_DEFAULT,
_CONFIG5L_DEFAULT,
_CONFIG5H_DEFAULT,
_CONFIG6L_DEFAULT,
_CONFIG6H_DEFAULT,
_CONFIG7L_DEFAULT,
_CONFIG7H_DEFAULT
);
#pragma romdata


void main(void);

void main(void)
{
}


config.h文件在mcc18h子目录中,具体看看这个文件

和datasheet的配置尾部分就知道了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

142

主题

718

帖子

1

粉丝