siapa yg dirumahnya punya sepatu CROCS??
Ternyata tepat dibawah telapak kaki disepatu buatan perusahaan Amerika ini, ada lafadz Allah yg mereka samarkan. cekidot
Quote:
Originally Posted by Gambar Sepatu CROCS
Sebarkan untuk agan-agan yg muslim, karena banyak yg ga sadar adanya lafadz Allah di sepatu CROCS.
Dunia MCS51 tidak semuanya hitam atau putih (nol atau satu), tapi justru lebih banyak tingkatan warna kelabu (nilai antara nol dan satu). Dengan demikian sering kali microcontroller harus berhubungan dengan dunia Analog, baik menerima tegangan Analog dari luar, maupun mengeluarkan tegangan Analog. Dalam dunia elektronika dikenal dua jenis rangkaian untuk interface dunia Analog ke Digital, jenis pertama dikenal sebagai rangkaian konversi besaran digital ke analog (“Digital to Analog Converter” – disingkat sebagai “DAC”), yang kedua adalah rangkaian konversi besaran analog ke digital (“Analog toDigital Converter” – disingkat sebagai “ADC”). Dua jenis rangkaian di atas dipakai cukup luas, pabrik pembuat IC banyak membuat berbagai jenis IC ADC maupun DAC, sehingga untuk menghubungkan mikrokontroler ke dunia Analog cukup memilih salah satu chip yang sesuai dengan kebutuhan, tidak perlu repor-repot merangkai sendiri.
Ketelitian DAC dan ADC tergantung pada berapa bit sinyal digital yang diharapkan, yang paling umum dipakai 8 bit sinyal digital. Dengan 8 bit sinyal digital sebuah DAC bisa membangkitkan tegangan dengan 256 tingkatan, misalkan tegangan maksimum yang bisa dibangkitkan sebesar 2,55 Volt, maka DAC ini bisa membangkitkan tegangan 0 sampai 2.55 Volt dengan tingkatan 0,01 Volt, artinya input biner bernilai $01 pada input DAC akan membangkitkan tegangan output 0,01 Volt, biner $02 membangkitkan 0,02 Volt dan seterusnya biner $FF (255) menghasilkan 2,55 Volt. Sebaliknya, tegangan 0 sampai 2,55 Volt akan di-skala oleh ADC menjadi besaran digital $00 sampai $FF (255).
IC DAC yang banyak dipakai dan mudah dijumpai di pasar Indonesia adalah DAC0800 / DAC0801 / DAC0802 8-Bit Digital-to-Analog Converters, sedangkan ADC yang banyak dipakai adalah ADC0801 / ADC0802 / ADC0803 / ADC0804 / ADC0805 8-Bit Microprocessor Compatible A/D Converters, keduanya buatan National Semiconductor. Di luar IC ADC tersebut di atas, dikenal pula IC ADC dengan rangcangan khusus, yang sudah dilengkapi untuk keperluan membangun Digital Volt Meter, misalnya ICL7106/ICL7107 3 1/2-Digit A/D Converter produksi Maxim. IC semacam ini sesungguhnya merupakan ADC biasa yang dilengkapi dengan rangkaian untuk menampilkan tegangan yang diukur, keteletiannya lebih besar dari ADC 8 bit, bisa dipakai untuk mengukur tegangan 0 sampai 1,999 (hampir 11 bit).
Posted in : elektro
Kali ini kita akan ngebahas gimana cara menggunakan ADC yang disambung ke sensor suhu LM35.
Output dari sensor kita hubungkan dengan PORTA.0 (chanel ADC 0). Untuk kodenya kita gunakan aja CodeWizard agar lebih efisien n kita gak usah pusing2 hafalin register2 AVR.
Oke sekarang langsung aja:
1. klik icon CodeWizard di CodeVision AVR. Lalu klik tab ADC
2. Pada tampilan tab ADC, centang ADC ENABLED utk mengaktifkan ADC
Use 8 Bits: untuk memilih apakah ADC menggunakan resolusi 10 bit atau 8 bit. Biarkan kosong(jangan di centang) agar ADC menggunakan resolusi 10 bit.
ADC Interrupt: Interrupt ADC diaktifkan apa tidak.
High Speed: mode high speed digunakan apa tidak.
Volt. Ref: referensi tegangan ADC. ubah ke AVCC pin, agar ADC menggunakan referensi teg. 5 volt.
ADC Clock: untuk memilih frekuensi clock ADC.
Ada pertanyaan menarik dari Mas HaPE, tentang ADC Clok ini:
di keterangan Clok ADC memang tertulis 125.000 kHz.
Itu bukan 125ribu kHz (125Mhz)
Tapi 125,000 kHz (125,0 kHz)
Inget orang Inggris nulis koma pake titik.
Auto Trigger Source: untuk menentukan sumber trigger ADC
...Ok let's finish this thing....
3. sekarang tinggal klik File ---> Generate, Save and Exit
lalu kasih nama dan simpen File2nya.
Contoh program ADC untuk LM35 :
#includeProgram diatas untuk membaca nilai suhu dari sensor LM35 trus hasilnya digunakan sebagai acuan untuk menyalakan Heater yg terhubung ke PORTB.0
#include.
#include
// Alphanumeric LCD Module functions
#asm
.equ __lcd_port=0x18
#endasm
#include
#define heater PORTB.0//heater di hubungkan dg PORTB.0
#define ADC_VREF_TYPE 0x40
unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input|ADC_VREF_TYPE;
ADCSRA|=0x40;
delay_us(10);
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCW;
}
unsigned char buff[33];
void lcd_putint(unsigned int dat)
{
sprintf(buff,"%d ",dat);
lcd_puts(buff);
}
void main(void)
{
unsigned int suhu;
float adc;
DDRB=0xff;
PORTB=0x00;
// ADC initialization
// ADC Clock frequency: 125.000 kHz
// ADC Voltage Reference: AVCC pin
// ADC High Speed Mode: Off
// ADC Auto Trigger Source: None
ADMUX=ADC_VREF_TYPE;
ADCSRA=0x85;
SFIOR&=0xEF;
// LCD module initialization
lcd_init(16);
while (1)
{
// Place your code here
adc = read_adc(0);
adc=adc/255;
suhu=adc*175;
suhu=suhu-12;
if (suhu<27)heater=1;
if (suhu>32)heater=0;
lcd_putsf("Suhu= ");
lcd_putint(suhu);
delay_ms(1000);
lcd_clear();
};
}
Dalam program diatas terdapat code:
adc=adc/255;Fungsi kode diatas untuk mengkalibrasi nilai ADC agar sesuai dengan suhu sebenarnya. Setiap rangkaian memiliki error yg berbeda-beda. jadi nilai untuk kalibrasi harus di sesuaikan.
suhu=adc*175;
suhu=suhu-12;