التحويل من تناظرى إلى رقمى مع المترجم CCS C :
منتديات الهندسة الكهربية والإلكترونية والميكاترونكس والكومبيوتر :: برمجة الميكروكونترولر PIC بلغة السى مع المترجم CCS - C
صفحة 1 من اصل 1
التحويل من تناظرى إلى رقمى مع المترجم CCS C :
التحويل من تناظرى إلى رقمى مع المترجم CCS C :
للتحكم فى المحول من تناظرى إلى رقمى يوفر المترجم CCS C الدوال التالية :
• الدالة setup_adc(mode) : لتحديد مصدر ساعة المحول .
• الدالة setup_adc_ports(value) : لتحديد أى الأطراف تكون تناظرية .
• الدالة setup_adc_channel(channel) : لتحديد قناة الدخل التناظرى الحالية .
• الدالة read_adc() : تنفيذ التحويل .
كما يوجد أيضا التوجيه #device adc=xx والذى يحدد حجم العودة بالدالة read_adc() حيث xx يمكن أن تكون “8” أو “10” .
مثال :
البرنامج الأساسى :
للتحكم فى المحول من تناظرى إلى رقمى يوفر المترجم CCS C الدوال التالية :
• الدالة setup_adc(mode) : لتحديد مصدر ساعة المحول .
• الدالة setup_adc_ports(value) : لتحديد أى الأطراف تكون تناظرية .
• الدالة setup_adc_channel(channel) : لتحديد قناة الدخل التناظرى الحالية .
• الدالة read_adc() : تنفيذ التحويل .
كما يوجد أيضا التوجيه #device adc=xx والذى يحدد حجم العودة بالدالة read_adc() حيث xx يمكن أن تكون “8” أو “10” .
مثال :
البرنامج الأساسى :
- الكود:
/*
PIC16F877A baic program EX1
*/
#include <16F877a.h>
#device adc=10 // Set ADC resolution to 10B it
#use delay(clock=4000000)
#include <lcd.c>
Void main()
{
int16 x;
float y;
/* ADC Initialization */
setup_adc(ADC_CLOCK_INTERNAL); // initialize ADC with a sampling rate of Crystal/4 MHz
setup_adc_ports(RA0_ANALOG); // set PIN_A0 as analog input channel
set_adc_channel(0); // point ADC to channel 0 for ADC reading
delay_ms(1); // ADC module is slow, needs some time to adjust.
/* Peripherals Configurations */
lcd_init(); // Turn LCD ON, along with other initialization commands
delay_ms(100);
while(true)
{
x = read_adc(); // x from 0 to 1023
y = 5.0 * x / 1024.0; // y from 0v to 5v
printf(lcd_putc, "\fADC = %4Ld", x);//format % : 4 digits , long integer
printf(lcd_putc, "\nVoltage = %01.2fv",y);//format % : 2digits.2digit float
delay_ms(500);
}
}
مواضيع مماثلة
» الفصل الثامن التحويل من تناظرى لرقمى ADC ومن رقمى لتناظرى DAC
» قياس جهد تناظرى وتحويله من تناظرى إلى رقمى وإلى جهد وعرضه على وحدة LCD وإرساله للعرض على الكمبيوتر
» تدريبات ومشاريع الأردوينو Arduino Tutorials and Projects
» مشروع متحكم رقمى فى درجة الحرارة السالبة والموجبة بالحساس DS18B20 والميكروكونترولر 16F628 والسفن سيجمنت مع المترجم CCS C :
» المؤقتات والمقاطعة والميكروكونترولر PIC16F877A مع المترجم CCS C :
» قياس جهد تناظرى وتحويله من تناظرى إلى رقمى وإلى جهد وعرضه على وحدة LCD وإرساله للعرض على الكمبيوتر
» تدريبات ومشاريع الأردوينو Arduino Tutorials and Projects
» مشروع متحكم رقمى فى درجة الحرارة السالبة والموجبة بالحساس DS18B20 والميكروكونترولر 16F628 والسفن سيجمنت مع المترجم CCS C :
» المؤقتات والمقاطعة والميكروكونترولر PIC16F877A مع المترجم CCS C :
منتديات الهندسة الكهربية والإلكترونية والميكاترونكس والكومبيوتر :: برمجة الميكروكونترولر PIC بلغة السى مع المترجم CCS - C
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى