• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
  • slider image 488
  • slider image 491
:::

論壇索引


Board index » All Posts (noiseyou99)




實驗版APP013 USB C#開發
新會員
新會員



發表於: 2011/3/10 23:23
頂部


Re: 記憶體宣告大的陣列
#2
新會員
新會員


謝謝你們的回答!!!
我了解嚕!!!

發表於: 2009/3/18 20:13
頂部


記憶體宣告大的陣列
#3
新會員
新會員


Error - section '.udata_japan_debug.o' can not fit the section. Section '.udata_japan_debug.o' length=0x00000106

最大的陣列只能16*16 byte

在大下去 就會出現上面那行

請問各位大大一下

如果要宣告一個32*32的陣列byte

請問要怎麼宣告呢

一個bank 256byte

我使用的單晶片是18F4520

謝謝

發表於: 2009/3/17 18:18
頂部


PIC4520 與25LC160 溝通使用SPI
#4
新會員
新會員


小弟使用C18 用到SPI部分與25LC160 傳輸讀取資料
程式會卡在busy_polling();
就算去掉 讀到的值 也是錯誤
石英晶體是接16M
用的實驗版是APP001
請問是什麼原因呢!? 謝謝
以下是程式碼

#include <p18cxxx.h>
#include <spi.h>
// FUNCTION Prototypes
void set_wren(void);
void busy_polling(void);
void status_write(unsigned char data);
void byte_write(unsigned char addhigh,unsigned char addlow,unsigned char data);
unsigned char byte_read (unsigned char addhigh,unsigned char addlow);

unsigned char var;
unsigned char ff=0x00;

#define SPI_CS LATAbits.LATA5
//**************************************************
void main(void)
{
ADCON1=0X0F;
TRISA = 0;
SPI_CS = 1; // ensure SPI memory device
// Chip Select is reset
OpenSPI(SPI_FOSC_16, MODE_00, SMPEND);
set_wren();
status_write(0);
busy_polling();
set_wren();
byte_write(0x00, 0x61, 'E');
busy_polling();
ff = byte_read(0x00, 0x61);
CloseSPI();
while(1);
}
void set_wren(void)
{
SPI_CS = 0; //assert chip select
var = putcSPI(SPI_WREN); //send write enable command
SPI_CS = 1; //negate chip select
}
void byte_write (unsigned char addhigh,unsigned char addlow,unsigned char data)
{
SPI_CS = 0; //assert chip select
var = putcSPI(SPI_WRITE); //send write command
var = putcSPI(addhigh); //send high byte of address
var = putcSPI(addlow); //send low byte of address
var = putcSPI(data); //send data byte
SPI_CS = 1; //negate chip select
}
unsigned char byte_read (unsigned char addhigh,unsigned char addlow)
{
SPI_CS = 0; //assert chip select
var = putcSPI(SPI_READ); //send read command
var = putcSPI(addhigh); //send high byte of address
var = putcSPI(addlow); //send low byte of address
var = getcSPI(); //read single byte
SPI_CS = 1;
return (var);
}
void status_write (unsigned char data)
{
SPI_CS = 0;
var = putcSPI(SPI_WRSR); //write status command
var = putcSPI(data); //status byte to write
SPI_CS = 1; //negate chip select
}
void busy_polling (void)
{
do
{
SPI_CS = 0; //assert chip select
var = putcSPI(SPI_RDSR); //send read status command
var = getcSPI(); //read data byte
SPI_CS = 1; //negate chip select
} while (var & 0x01); //stay in loop until !busy
}

發表於: 2008/8/30 21:14
頂部






:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------