-
Tutorial Memberikan Support Sesama Konten Kreator Facebook...
oleh olhdtsmg2
[September 14, 2023, 07:33:31 PM] -
Account Turnitin Student No Repository (Actived) Activation...
oleh olhdtsmg2
[Agustus 31, 2023, 10:05:47 PM] -
Hallo Salam Kenal
oleh kimmylie
[Agustus 18, 2023, 06:11:29 AM] -
Training Online Panel Data Regression Free With Stata,...
oleh olhdtsmg2
[Agustus 17, 2023, 11:42:56 AM] -
Workshop Panel Data Regression Free With Stata, Eviews,...
oleh olhdtsmg2
[Agustus 12, 2023, 09:48:10 AM]
Anggota
- Total Anggota: 27,915
- Latest: SandraBam
Stats
- Total Tulisan: 139,653
- Total Topik: 10,405
- Online today: 154
- Online ever: 1,582
- (Desember 22, 2022, 06:39:12 AM)
Pengguna Online
Users: 0
Guests: 32
Total: 32
Guests: 32
Total: 32
Mei 16, 2009, 10:28:00 AM
Views: 39529
<div style="text-align: justify;">Pemrograman Bahasa C untuk AVR Bahasa C luas digunakan untuk pemrograman berbagai jenis perangkat, termasuk mikrokontroler. Bahasa ini sudah merupakan <span style="font-style: italic;">high level language</span>, dimana memudahkan programmer menuangkan algoritmanya. Untuk mengetahui dasar bahasa C dapat dipelajari sebagai berikut. <br />
<br />
<span style="font-weight: bold;">1. Struktur penulisan program</span><br />
#include < [library1.h] > // Opsional<br />
#include < [library2.h] > // Opsional<br />
#define [nama1] [nilai] ; // Opsional<br />
#define [nama2] [nilai] ; // Opsional<br />
[global variables] // Opsional<br />
[functions] // Opsional<br />
void main(void) // Program Utama<br />
{ [Deklarasi local variable/constant] [Isi Program Utama] } <br />
<br />
<span style="font-weight: bold;">2. Tipe data</span><br />
char : 1 byte ( -128 s/d 127 )<br />
unsigned char : 1 byte ( 0 s/d 255 )<br />
int : 2 byte ( -32768 s/d 32767 )<br />
unsigned int : 2 byte ( 0 s/d 65535 )<br />
long : 4 byte ( -2147483648 s/d 2147483647 )<br />
unsigned long : 4 byte ( 0 s/d 4294967295 )<br />
float : bilangan desimal<br />
array : kumpulan data-data yang sama tipenya.<br />
<br />
<span style="font-weight: bold;">3. Deklarasi variabel & konstanta</span><br />
Variabel adalah memori penyimpanan data yang nilainya dapat diubah-ubah.<br />
Penulisan : [tipe data] [nama] = [nilai] ;<br />
Konstanta adalah memori penyimpanan data yang nilainya tidak dapat diubah. <br />
Penulisan : const [nama] = [nilai] ;<br />
Tambahan: Global variabel/konstanta yang dapat diakses di seluruh bagian program.<br />
Local variabel/konstanta yang hanya dapat diakses oleh fungsi tempat dideklarasikannya.<br />
<br />
<span style="font-weight: bold;">4. Statement</span><br />
Statement adalah setiap operasi dalam pemrograman, harus diakhiri dengan [ ; ] atau [ } ]. Statement tidak akan dieksekusi bila diawali dengan tanda [ // ] untuk satu baris. Lebih dari 1 baris gunakan pasangan [ /* ] dan [ */ ]. Statement yang tidak dieksekusi disebut juga comments / komentar. <br />
Contoh: suhu=adc/255*100; //contoh rumus perhitungan suhu<br />
<br />
<span style="font-weight: bold;">5. Function Function</span><br />
adalah bagian program yang dapat dipanggil oleh program utama.<br />
Penulisan : [tipe data hasil] [nama function]([tipe data input 1],[tipe data input 2]) { [statement] ; }<br />
<br />
<span style="font-weight: bold;"> 6. Conditional statement dan looping if else</span><br />
digunakan untuk penyeleksian kondisi<br />
if ( [persyaratan] ) { [statement1]; [statement2]; } else { [statement3]; [statement4]; }<br />
for : digunakan untuk looping dengan jumlah yang sudah diketahui<br />
for ( [nilai awal] ; [persyaratan] ; [operasi nilai] ) { [statement1]; [statement2]; }<br />
while : digunakan untuk looping jika dan salama memenuhi syarat tertentu<br />
while ( [persyaratan] ) { [statement1]; [statement2]; }<br />
do while : digunakan untuk looping jika dan salama memenuhi syarat tertentu, namun min 1 kali<br />
do { [statement1]; [statement2]; } while ( [persyaratan] )<br />
switch case : digunakan untuk seleksi dengan banyak kondisi<br />
switch ( [nama variabel] ) { case [nilai1]: [statement]; break; case [nilai2]: [statement]; break; }<br />
<br />
<span style="font-weight: bold;">7. Operasi logika dan biner Logika</span><br />
AND :&&<br />
NOT : !<br />
OR : ||<br />
Biner AND : &<br />
OR : |<br />
XOR : ^<br />
Shift right: >><br />
Shift left : <<<br />
Komplemen : ~ <br />
<br />
<span style="font-weight: bold;">8. Operasi relasional (perbandingan)</span><br />
Sama dengan : ==<br />
Tidak sama dengan : !=<br />
Lebih besar : ><br />
Lebih besar sama dengan : >=<br />
Lebih kecil : <<br />
Lebih kecil sama dengan : <=<br />
<br />
<span style="font-weight: bold;">9. Operasi aritmatika</span><br />
+ , - , * , / : tambah,kurang,kali,bagi<br />
+= , -= , *= , /= : nilai di sebelah kiri operator di tambah/kurang/kali/bagi dengan nilai di sebelah kanan operator<br />
% : sisa bagi<br />
++ , -- : tambah satu (increment) , kurang satu (decrement)<br />
Contoh :<br />
a = 5 * 6 + 2 / 2 -1 ;<br />
maka nilai a adalah 30 a *= 5 ;<br />
jika nilai awal a adalah 30, maka nilai a = 30x5 = 150. a += 3 ; <br />
jika nilai awal a adalah 30, maka nilai a = 30+5 = 33. a++ ;<br />
jika nilai awal a adalah 5 maka nilai a = a+1 = 6. a-- ; <br />
jika nilai awal a adalah 5 maka nilai a = a-1 = 4.</div>
Comments: 60
You don't have permission to comment, or comments have been turned off for this article.
Siip...
Lanjuut Boss...!!
Coba dengan kasus pemrograman aja biar lebih mengena n mudah dipahami.
tsnya mana nih...
lanjut gan...
please sent to : [email protected]
masih anak baru nich T.T
kalo aq mu tanya ttg ATmega16 bagian EEPROM dmn y???
bingung >,<
makasih ya
thx... bravo mas... maju terus...
lanjut gan....
bahas eeprom dunk
^^
tu..............olong......................! ya.....................
komplekin lagi bos tutorialnya..
ebooks juga boleh..
klo 1 buah mikro bisa ngatur lebih dr 3 inputan gag?
trus dr beberapa inputan itu diproses jd 1 buah output yg menunjukan data beberapa input itu bisa gag?
device output brupa print out...
Pak apakah anda tau toko yang menjual led RGB ?
email saya : [email protected]
by Jono
^_^
soalnya aq juga lagi belajar bahasa C...
Nah, q pernah dger, ada suatu cara di Codevision, supaya bahasa assembly bisa dibaca ke dalam Codevision.....
Tapi gk tau gmna...?? Tau gk...?
kenapa pake bahasa C?
C ialah termasuk bahasa pemograman tingkat menengah sedang Bascom (Basic Compiler) itu sudah bahasa tingkat tinggi. Waktu delay untuk eksekusi instruksi akan lebih cepat pada bahasa C daripada bahasa Bascom. Ini salah satu sebab yang cukup mendasar kenapa menggunakan C.
keunggulan Bascom ialah mudah dipelajari dan digunakan. Instruksinya lebih friendly daripada C (Sebenarnya ini relatif).
untuk yang eksekusi lebih cepat dapat menggunakan bahasa assembly karena bahasa ini lebih cocok untuk diimplementasikan ke hardware.
mau nanya jg nih, pada program dg bahasa C (pake codevision AVR) , fungsi bahasa asembly u/ apa ya? mis. #asm ('sei'). apakah bisa diganti dgn statemnt lain? kalo mau belajar bhs assembly lg repot. codevision aja msh pemula.
*bukan programer Bahasa C sih*
tp,, klu g' salah itu kan pemogramman menggunakan bahasa C++,,
oh ya....,, bagai mana sich membuat mikrotik..?
saya sedang mempelajari mikri untuk tugas akhir
kalau menngunakan bascom bagaimana ada referensi gak
terima kasih
heheee,,,
aku butuh banget. penting neh...
Untuk Mikrokontroler AVR, software compiler untuk bahasa C apa???
lanjut donkkk.....
wew
gini gan, ane lagi ngerjain Tugas Akhir tentang sistem kendali rumah dengan sms menggunakan mikrokontroler AT Mega 16
gambarannya -> kita bisa ngendaliin rumah melalui sms, yaitu perintah untuk:
1. menghidupkan & mematikan Lampu
2. membuka dan menutup pintu garasi
3. bisa mengirim sms laporan apabila sensor inframerah mendeteksi sesuatu
programya sudah ada, tapi kok tetap gak mau nerima dan ngirim sms, padahal udah bener(klo menurut ane)
rangkaian mikronya udah jadi, miniatur rumahnya juda udah ada.....
ANE MINTA BANTUAN KEPADA AGAN2 YG PINTER MIKROKONTROLER----HELP ME..... (diutamakan yang berada di surabaya & sekitarnya)
ane juga gak ngerti masalahnya dimananya, entah programnya atau mikronya
pokoknya yang bisa benerin SAMPAI BISA ane kasih 500 RIBU sebagai tanda terima kasih
lokasi ane si Surabaya
bagi yang bisa dan berminat hub--> sms (085300310241) & telpon (03160577752)
Buat agan yg punya pengalaman masukin bootloader ke micro (keluarga AVR) + bikin downloadernya tentu,... tolong share dong. Saya udah coba pake ICSP dgn downloader sederhana lewat LPT, tapi masih gagal.
kalau boleh tau caranya dapetin itu alikasi C program dimana ya???
makasih sebelumnya
soalnya saya lagi tugas akhir ne, dan bagiaan mikrokontrolernya sebagai embedded client dengan modul ethernet type enc28j60.
Sedangkan yang saya searching di internet selalu yang ada embedded web server.
apakah embedded web server bisa dimodifikasi menjadi embedded client?
mohon bantuannya,, sharing ilmunya.. saya mohon mga ada pencerahan,, saya benar2 mentok buat embedded client ini.
misalnya kita tekan tombol (push button) sekali, lampu/led nyala, kita tekan tombol (push button) sekali lagi lampunya mati...
dari kemarin saya bingung program C-nya gimana,,,, apa mungkin bisa pake interrupt??
atau harus modif dari rangkaiannya??
saya pake compiler mikroC dan mikon Atmega16...
mohon bantuannya ya??
thanks...