chào các bác. em có 1 bài về xử lý ADC của con 29466
1. điện áp lấy từ con biến trở phân áp
2. cho qua bộ PGA với gain=1
3. cho qua bộ ADC 12bit rồi hiển thị lên LCD
em viết code này mà sao nó chạy không đúng
điều chỉnh biến trở cũng không thấy thay đổi gì
các bác xem hộ em cái nhé
code:
#include <m8c.h> // part specific constants and macros
#include "PSoCAPI.h" // PSoC API definitions for all User Modules
#include "string.h"
#include "stdlib.h"
void delay(time)
{
long i;
for(i=0;i<time;i++)
{
;
}
}
void main()
{
// Insert your main routine code here.
long iData;
LCD_1_Start();//Khoi tao module dieu khien LCD
M8C_EnableGInt; // Cho phep ngat toan cuc
ADCINC12_1_Start(ADCINC12_1_HIGHPOWER); // Khoi tao bo ADC
ADCINC12_1_GetSamples(0); // Cai dat de bo ADC lay mau lien tuc
for( ; ; ){
while(ADCINC12_1_fIsDataAvailable()== 0); // Lap cho den khi bo ADC da co du lieu
ADCINC12_1_ClearFlag(); // Xoa co cua ADC
iData=ADCINC12_1_iGetData(); // Doc gia tri tu ADC vao bien iData
Show(iData);//goi ham Show
delay(100000);
}
}
void Show(long input)
{
char* string;//Khai bao mot string
string=ftoa(input,0);//Convert mot so nguyen thanh mot string
LCD_1_Position(0,4);//Hien thi gia tri do duoc tai vi tri 0,4
LCD_1_PrString(string);
}
1. điện áp lấy từ con biến trở phân áp
2. cho qua bộ PGA với gain=1
3. cho qua bộ ADC 12bit rồi hiển thị lên LCD
em viết code này mà sao nó chạy không đúng
điều chỉnh biến trở cũng không thấy thay đổi gì
các bác xem hộ em cái nhé
code:
#include <m8c.h> // part specific constants and macros
#include "PSoCAPI.h" // PSoC API definitions for all User Modules
#include "string.h"
#include "stdlib.h"
void delay(time)
{
long i;
for(i=0;i<time;i++)
{
;
}
}
void main()
{
// Insert your main routine code here.
long iData;
LCD_1_Start();//Khoi tao module dieu khien LCD
M8C_EnableGInt; // Cho phep ngat toan cuc
ADCINC12_1_Start(ADCINC12_1_HIGHPOWER); // Khoi tao bo ADC
ADCINC12_1_GetSamples(0); // Cai dat de bo ADC lay mau lien tuc
for( ; ; ){
while(ADCINC12_1_fIsDataAvailable()== 0); // Lap cho den khi bo ADC da co du lieu
ADCINC12_1_ClearFlag(); // Xoa co cua ADC
iData=ADCINC12_1_iGetData(); // Doc gia tri tu ADC vao bien iData
Show(iData);//goi ham Show
delay(100000);
}
}
void Show(long input)
{
char* string;//Khai bao mot string
string=ftoa(input,0);//Convert mot so nguyen thanh mot string
LCD_1_Position(0,4);//Hien thi gia tri do duoc tai vi tri 0,4
LCD_1_PrString(string);
}
Comment