em đang làm 1 bài về mạch thu phát hồng ngoại dùng 29466
ý tưởng: dùng cặp led thu phát. led phát có chân dương nối qua 1 công tắc và nối với dương nguồn
led thu là con led thu 3 chân
khi bấm công tắc thì led phát phát,sau đó đếm số lần bấm rồi hiển thị lên LCD
code của e như sau: e cho chân Vout của led thu qua PGA rồi qua ADCINC12 để lấy mẫu kiểm tra:
#include <m8c.h> // part specific constants and macros
#include "PSoCAPI.h" // PSoC API definitions for all User Modules
#include "stdlib.h"
void main()
{
// Insert your main routine code here.
int dem=0;
PGA_1_Start(PGA_1_LOWPOWER );//khoi tao bo khuech dai thuan(PGA)
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);
for( ; ; ){
while(ADCINC12_1_fIsDataAvailable()!=0);
dem=dem+1;
show(dem);
}
}
void ngat1(void)
{
;
}
void show(int input)
{
char* str;//Khai bao mot string
itoa(str,input,10);//Convert mot so nguyen thanh mot string
LCD_1_Position(0,0);
LCD_1_PrCString("so lan dem: ");
LCD_1_Position(1,4);//Hien thi gia tri do duoc tai vi tri 1,4
LCD_1_PrString(str);
}
nhưng khi e bấm công tắc thi chẳng thấy hiển thị trên LCD thay đổi gì cả
có chỉ hiện là " so lan dem : 2" các bác giúp em với
ý tưởng: dùng cặp led thu phát. led phát có chân dương nối qua 1 công tắc và nối với dương nguồn
led thu là con led thu 3 chân
khi bấm công tắc thì led phát phát,sau đó đếm số lần bấm rồi hiển thị lên LCD
code của e như sau: e cho chân Vout của led thu qua PGA rồi qua ADCINC12 để lấy mẫu kiểm tra:
#include <m8c.h> // part specific constants and macros
#include "PSoCAPI.h" // PSoC API definitions for all User Modules
#include "stdlib.h"
void main()
{
// Insert your main routine code here.
int dem=0;
PGA_1_Start(PGA_1_LOWPOWER );//khoi tao bo khuech dai thuan(PGA)
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);
for( ; ; ){
while(ADCINC12_1_fIsDataAvailable()!=0);
dem=dem+1;
show(dem);
}
}
void ngat1(void)
{
;
}
void show(int input)
{
char* str;//Khai bao mot string
itoa(str,input,10);//Convert mot so nguyen thanh mot string
LCD_1_Position(0,0);
LCD_1_PrCString("so lan dem: ");
LCD_1_Position(1,4);//Hien thi gia tri do duoc tai vi tri 1,4
LCD_1_PrString(str);
}
nhưng khi e bấm công tắc thi chẳng thấy hiển thị trên LCD thay đổi gì cả
có chỉ hiện là " so lan dem : 2" các bác giúp em với
Comment