PIC单片机C编程问题,我刚从转来学这一块,以下是写的第一个程序,高手帮忙看看!!

芯片用的是PIC10F204以下是具体程序;#include"pic.h"#defineMAX_BUFFER_SIZE3bittxdata=0;//unsignedcha... 芯片用的是PIC10F204
以下是具体程序;

#include "pic.h"

#define MAX_BUFFER_SIZE 3

bit txdata = 0;

//unsigned char SPI_Data_Array[MAX_BUFFER_SIZE]={0X00};
//unsigned char SPI_Data_Array0[MAX_BUFFER_SIZE] = {0x00,0x00,0x04};
//unsigned char SPI_Data_Array1[MAX_BUFFER_SIZE] = {0x00,0x0A,0x01};
//unsigned char SPI_Data_Array2[MAX_BUFFER_SIZE] = {0x1F,0x80,0x92}; //A2
//unsigned char SPI_Data_Array3[MAX_BUFFER_SIZE] = {0x1F,0x80,0x93};

void DataTx(unsigned char * p);
void Delay(unsigned int n);

void Delay(unsigned int n)
{
unsigned char i;
while(n--)
{
for(i=0; i<225; i++);
}
}

void main(void)
{
unsigned char i = 0;

unsigned char SPI_Data_Array0[MAX_BUFFER_SIZE] = {0x00,0x00,0x04};
unsigned char SPI_Data_Array1[MAX_BUFFER_SIZE] = {0x00,0x0A,0x01};
unsigned char SPI_Data_Array2[MAX_BUFFER_SIZE] = {0x1F,0x80,0x92}; //A2
unsigned char SPI_Data_Array3[MAX_BUFFER_SIZE] = {0x1F,0x80,0x93};
unsigned char SPI_Data_Array[MAX_BUFFER_SIZE]={0X00};

Delay(500);
for(i=0; i<3; i++)
{
DataTx(&SPI_Data_Array0);
}
}

void DataTx(unsigned char * p)
{
unsigned char len = 0;
unsigned char tab = 0;
unsigned char i = 0;
for(len=0;len<MAX_BUFFER_SIZE;len++)
{
tab = *p;
for(i=0; i<8; i++)
{
txdata = (bit)(tab&1);
Delay(20);
GP1 = txdata;
tab >>= 1;
}
*p ++;
}
Delay(500);
}
总是出现以下问题:
HI-TECH C PRO for the PIC10/12/16 MCU family (Lite) V9.65
Copyright (C) 1984-2009 HI-TECH SOFTWARE
(1273) Omniscient Code Generation not available in Lite mode (warning)
Error [1253] double.c; 55. could not find space (26 bytes) for auto/param block
Error [1253] double.c; 55. could not find space (26 bytes) for auto/param block
Error [1254] double.c; 55. could not find space (12 bytes) for data block
Error [1253] D:\kk\main.c; 23. could not find space (26 bytes) for auto/param block
Error [1253] D:\kk\main.c; 23. could not find space (26 bytes) for auto/param block
Error [1254] D:\kk\main.c; 23. could not find space (12 bytes) for data block

我用的是MPLAB IDE ,C编译器用的是PICC
展开
 我来答 举报
华录_起点
2010-08-26 · TA获得超过1055个赞
知道小有建树答主
回答量:533
采纳率:0%
帮助的人:0
展开全部
我看你程序中只用到了Array0,将其余的不用Array1、2、3注释掉,编译可以通过。

可能是由于RAM空间太小了,你定义变量占用空间太多了

建议:仔细看看datasheet关于空间管理部分
冉易云ST
2010-08-26 · TA获得超过535个赞
知道小有建树答主
回答量:397
采纳率:0%
帮助的人:523万
展开全部
用的什么编译器呀,库貌似有问题,再下载一个编译器相应的库试试,上面明显是找不到相应的文件!
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
xjt01000
2010-09-01
知道答主
回答量:5
采纳率:0%
帮助的人:0
展开全部
PIC10F204的程序空间很小的.你可能超了.
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
meltond
2010-08-28 · TA获得超过446个赞
知道答主
回答量:208
采纳率:0%
帮助的人:171万
展开全部
楼上说的有道理
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式