Newest Post

Pengontrolan LED Via Port USB Tanpa Konventer USB/RS232

| Minggu, 19 April 2015
Baca selengkapnya »

Perlahan tapi pasti, port USB telah "mengalahkan" popularitas port serial (COM) dan port paralel (LPT). Kini, komputer-komputer dan laptop terbaru tidak menyertakan lagi port serial, apalagi port paralel. Beberapa tipe motherboard masih menyertakakan sebuah port serial (COM1).Namun demikian, kini hampir semua peralatan elektronik memiliki port USB untuk berkomunikasi dengan piranti elektronik lainnya.

Port USB memang memiliki banyak kelebihan dibandingkan dengan port serial dan port paralel. Terlepas dari sudut pandang aplikasi, port USB lebih cepat dan lebih ringkas dibandingkan port serial maupun port paralel. Port USB juga menyediakan catu daya 5V DC dengan kemampuan arus maksimum 500mA untuk menyuplai perangkat elektronik berbasis USB.

V-USB adalah sebuah software implementasi protokol USB berkecepatan rendah untuk mikrokontroller ATMEL AVR sehingga memungkinkan untuk membuat piranti USB dengan sebagian besar mikrokontroller AVR tanpa tambahan chip lain. V-USB dapat di download di www.obdev.at.

libusb-win32 adalah library Win32 yang memberikan akses kepada user (bukan admin) untuk mengakses piranti-piranti USB secara generik tanpa perlu membuat kode-kode program kernel. Dengan libusb, kita dapat menggunakan fungsi-fungsi API untuk transfer data Bulk, Control, Interrupt, dan Isochronous. Library dan driver libusb dapat di download di http://sourceforge.net/apps/trac/libusb-win32/wiki.

Skematik 

Pada eksperimen ini mengunakan mikrokontroller ATtiny2313V dengan kristal 12MHz dengan sebuah LED aktif high yang terhubung ke pin PD6. Berikut adalah skematik rangkaian eksperimen USB LED.



Berikut adalah program mikrokontroller ATtiny2313 untuk pengontrolan LED dari port USB
#define ON 1
#define OFF 0
#define LED(n) ((n)==(OFF) ? (PORTD&=~_BV(PD6)) : (PORTD|=_BV(PD6))) uchar   usbFunctionSetup(uchar data[8])
{
  usbRequest_t    *rq = (void *) data;   if (rq->bRequest==4)
      LED(ON);
  else if (rq->bRequest==5)
      LED(OFF);
} /***  P R O G R A M  U T A M A  ***/
int main(void)
{
    //Inisialisasi PORT D
    PORTD = 0;  
    DDRD = ~(1 << 2);     //Inisialisasi PORT B
    PORTB = 0;    
    DDRB = ~USBMASK;      //Inisialisasi Driver USB
    usbInit();     //Aktifkan fungsi interupsi
    sei();     for(;;)
    {
          usbPoll();    //Pantau terus, apakah ada permintaan dari Host
          _delay_ms(12);
    }
    return 0;
}


Untuk mengontrol LED melalui PC diperlukan sebuah antarmuka yang pada eksperimen ini menggunakan bahasa C.Kompiler yang digunakan yakni Pelles C.

Jika button LED ON di klik, maka program akan mengirimkan request ke USB Device yakni ATtiny2313 yang sudah ditanami program USB Protocol. Demikian juga dengan button LED OFF di klik, maka program akan mengirimkan request ke ATtiny2313 dengan ID request yang berbeda.

Untuk dapat berinteraksi dengan ATtiny2313. maka driver libusb perlu diinstal terlebih dahulu. Jika komputer telah terinstal piranti USB yang menggunakan libusb sebagai drivernya, contoh AVR USB. maka modul akan dikenal sebagai USBasp.

Berikut ini adalah program Demo USB LED Control dalam bahasa C
static INT_PTR CALLBACK MainDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
    unsigned char        nBytes;
    unsigned char        buffer[64];
    switch (uMsg)
    {
        case WM_INITDIALOG:
            //Inisialisasi port USB
            usb_init();             //Buka komunikasi USB dengan Modul USBLED
            if(usbOpenDevice(&handle, USBDEV_SHARED_VENDOR, "Teknik Elektro Links", USBDEV_SHARED_PRODUCT, "TELINKS-USB LED") != 0)
            {
                MessageBox(hwndDlg, "USBLED Error: Kode Vendor dan Product Salah!", "Error!", MB_ICONERROR);
                exit(1);
            }
            return TRUE;         case WM_COMMAND:
            switch (GET_WM_COMMAND_ID(wParam, lParam))
            {
                case ID_LED_ON:
                    nBytes = usb_control_msg(handle, USB_TYPE_VENDOR | USB_RECIP_DEVICE | USB_ENDPOINT_IN,
                    PSCMD_ON, 0, 0, (char *)buffer, sizeof(buffer), 5000);
                    return TRUE;                 case ID_LED_OFF:
                    nBytes = usb_control_msg(handle, USB_TYPE_VENDOR | USB_RECIP_DEVICE | USB_ENDPOINT_IN,
                    PSCMD_OFF, 0, 0, (char *)buffer, sizeof(buffer), 5000);
                    return TRUE;                 case IDOK:
                    EndDialog(hwndDlg, TRUE);
                    return TRUE;
            }
            break;         case WM_CLOSE:
            EndDialog(hwndDlg, 0);
            return TRUE;     }     return FALSE;
}
Program menggunakan fungsi usb_control_msg() untuk mengirimkan request kepada modul USBLED. Identifikasi perintah LED ON dan LED OFF diletakkan pada ID-Request yang dalam hal ini angka 4 (PSCMD_ON) untuk LED ON dan angka 5 (PSCMD_OFF) untuk LED OFF.

Demikian sedikit informasi mengenai pengontrolan LED melalui port USB, semoga bermanfaat.

sumber :  http://fajar-el-ridikc.blogspot.com/#ixzz3XQ7DkMTJ

Pengontrolan LED Via Port USB Tanpa Konventer USB/RS232

Posted by : Unknown
Date :Minggu, 19 April 2015
With 0komentar
Tag :

Tutorial Software Downloader Firmware Mikrokontroler ( AVR Programmer )

| Rabu, 08 April 2015
Baca selengkapnya »
Nama     :  Merna Ermi Yanti
Kelas      :2 CB
NIM       : 06143070038
Mata Kuliah : Membuat Downloader

Tutorial Software Downloader Firmware Mikrokontroler ( AVR Programmer )
Berikut ini langkah penggunaan dan troubleshooting-nya:
  1. Pertama temen2 install dulu drivernya… tinggal cek di device manager PC ato laptop temen2.
  2. Kedua Instal software Khazamanya… tinggal Next…Finish dan Yes :D.
  3. Jalankan software Khazama AVR Programmer, berikut tampilannya:    
  4. Pada menu “ AVR : “ Pilih tipe mikrokontroler yang digunakan, misalkan ATMEGA32.
  5. Untuk mendownload program yang telah di compile ( file dalam bentuk    *.hex) berikut langkahnya:
Klik Menu File kemudian pilih “ load FLASH file to Buffer “ atau tinggal klik icon seperti gambar berikut:


  • Cari file *.hex hasil compile di folder dimana program tersebut disimpan, kemudian pilih open. 
Maka tampilan jendela khazama akan menjadi:
 
Langkah selanjutnya tinggal meng-klik tombol “ Auto Program “ maka proses downloading akan berlangsung.
  • Kemudian akan muncul jendela seperti berikut, yang menandakan proses downloading telah selesai dan berhasil ^_^
     
Berikut beberapa kejadian error saat penggunaan khazama dan troubleshootingnya.

Error diatas, terjadi jika Khazama downloader belum ditancapkan pada computer PC ato laptop anda.

Error diatas, terjadi jika Khazama downloader belum di sambungkan dengan sistem minimum mikrokontroler yang akan diprogram, solusinya adalah dengan menghubungkan keduanya. Atau dapat juga terjadi saat sistem minimum mikrokontroler dengan Khazama downloader telah terhubung, namun mikrokontroler yang digunakan adalah mikrokontroler baru (baru dari pabrikan) yang belum di konfigurasi fuse bit-nya. Maka solusinya adalah mengatur fuse bitnya terlebih dahulu.
                                                                                                                                                           
Tutorial Software ProgISP v.1.7.2
Menggunakan ProgISP_v.1.72
Salam buat sobat semua,....
Pada posting kali ini penulis akan mencoba menjelaskan sedikit cara menggunakan Software ProgISP_v1.72. Software ini digunakan dalam pemrograman mikrokontroler khususnya saat melakukan Download File *.HEX ke dalam memori mikrokontroller MCS-51. Untuk bisa menggunakan software ini tentunya sobat harus mempunyai soft-copy software tersebut, karena software ini bersifat portable jadi tidak perlu di instal terlebih dahulu.
Bentuk tampilan programnya sebagai berikut:

Gambar 1. Tampilan program ProgISP_v.1.72
Selain mempunyai soft-copy programnya, sobat juga harus punya hardware USBASP yang merupakan perangkat komunikasi antara PC dengan Chip Mikrokontroler. Setelah hardware terhubung tampilan jendela program menjadi seperti di bawah ini, perhatikan perbedaannya:
 Gambar 2.a Perhatikan perubahan yang terjadi
 Gambar 2.b Hardware terdeteksi
Selanjutnya memanggil file *.HEX yang akan di download ke memori mikrokontroller, caranya Klik tombol Load Flash - truss pilih file *.HEX yang akan di download dan Klik tombol Open, seperti ditunjukan pada gambar berikut ini :
Gambar 3.a Klik Load Flash
Gambar 3.b Memilih File *.HEX
Langkah terakhir adalah Klik tombol Auto untuk Downloadding, jangan lupa lihat proses downloadnya hingga selesai.
Gambar 4. Download proses.
Terakhir perhatikan apakah program dapat berjalan seperti yang diharapkan (pada rangkaian aplikasi mikrokontroler).

Tugas 2 Sistem Operasi

| Minggu, 15 Maret 2015
Baca selengkapnya »


 1. Sebutkan dua fungsi utama sistem operasi?
Jawab :
· Sebagai Resource Manager
- Sebagai pengatur sumber daya komputer, baik hardware maupun software agar dapat menjalankan perintah-perintah yang diberikan oleh pengguna.
- Tugas utama Sistem Operasi sebagai resource manager adalah memantau penggunaan semua resources serta menerapkan aturan (policy) tertentu untuk menjalankan kerja komputer. Selain itu juga mengalokasikan resources yang diminta dan mengambil kembali (dealokasi) resource.
· Sebagai Extended Machine (Virtual Machine)
- Menyembunyikan kompleksitas pemrograman hardware dari programmer atau user. Sehingga pengguna dapat melakukan kegiatan atau kerja dengan lebih mudah melalui tampilan user interface. Dan pengguna juga tidak direpotkan berkaitan dengan kegiatan-kegiatan yang mengatur resource sebuah komputer.
- menyajikan fasilitas yang lebih mudah dan sederhana untuk menggunakan hardware.
2. Apa yang dimaksud dengan multiprogrammin? Berikan dua alasan diadakannya multiprogramming!
Jawab :
Multi programming adalah suatu kemampuan dari sebuah sistem untuk melayani lebih dari satu program yang dijalankan sekaligus dalam satu komputer yang sama.
Alasan diadakannya multiprogramming yaitu :
· Saat ini banyak aplikasi yang dalam proses penjalanannya mengakses lebih dari satu program. Sehingga agar program tersebut dapat berjalan lebih optimal perlu sistem multiprogramming.
· Memberikan efisiensi pekerjaan yang cukup tinggi, dengan mampu untuk menjalankan beberapa aplikasi secara bersamaan.
· Kebutuhan user yang semakin tinggi dan kompleks maka memerlukan sistem multiprogramming. Contohnya, ketika seorang user melakukan pekerjaannya sekaligus mendengarkan musik untuk refreshing.
3. Apa yang dimaksud dengan spooling? Apakah anda menganggap personal komputer harus memiliki spooling sebagai standar dasar di masa yang akan datang?
Jawab :
Spooling adalah membuat peripheral seolah-olah dapat digunakan bersama-sama sekaligus, dapat diakses secara simultan, yaitu dengan cara menyediakan beberapa partisi memori. Saat terdapat permintaan layanan peripheral, langsung diterima dan data disimpan dulu di memori yang disediakan (berupa antrian), kemudian dijadwalkan agar secara nyata dilayani oleh peripheral.
Karena pada saat ini kebutuhan akan kecepatan kinerja komputer semkin besar, maka teknologi spooling mutlak untuk dikembangkan dan diaplikasikan di komputer. Dengan teknologi itu maka proses komputasi sebuah program akan lebih cepat ditangani dan dikerjakan.
4. Pada awal perkembangan komputer, setiap byte data yang dibaca atau yang ditulis ditangani oleh CPU (tidak ada DMA-Direct Memory Access). Apa implikasinya struktur seperti ini terhadap konsep multiprogramming.
Jawab :
Bila sistem tersebut digunakan untuk melayani konsep multiprogramming, maka akan membutuhkan waktu yang lama dalam pemrosesannya. Dengan tidak ada memory pembantu proses maka proses pengaksesan data untuk diproses akan lama. Apalagi untuk kegiatan multiprogramming maka proses tersebut akan semakin lebih lama lagi. Oleh karena itu komputer pada awal perkembangannya tidak mampu untuk mengakomodasi konsep multiprogramming.
Jadi implikasi dari tidak adanya DMA dalam pemrosesan komputer adalah pada waktu untuk pengerjaan (pemrosesan) informasi. Bahkan mungkin konsep multiprogramming tidak bisa diaplikasikan oleh sistem prosesor non DMA.
5. Mengapa timesharing tidak tersebar luas pada generasi ke-2 komputer?
Jawab :
Karena varian dari multiprogramming, dimana tiap pemakai mempunyai satu terminal on-line dengan pemroses hanya memberi layanan pada pemakai yang aktif secara bergantian dengan cepat. Pemakai akan merasa dilayani terus menerus, padahal sebenarnya digilir persatuan waktu yang cukup singkat.
6. Instruksi-instruksi manakah yang diperbolehkan dalam Mode Kernel :
a. Disable all interupts.
b. Read the time-of-day clock.
c. Set the time-of-day clock.
d. Change the memory map.
Jawab :
Instruksi yang diperbolehkan dalam mode kernel adalah A (Disable all interupts) dan D(Change the memory map).
7. Sebutkan beberapa perbedaan sistem operasi pada personal komputer dengan sistem operasi pada mainframe!
Jawab :
Perbedaan sistem operasi pada PC dengan Sistem Operasi Mainframe :
1. Dalam sistem operasi PC hanya mampu melayani satu user saja, sedangkan sistem operasi mainframe mampu untuk melayani banyak user.
2. Pada sistem operasi PC biasanya memiliki user interfeace yang lebih menarik karena tujuan utamanya adalah member kemudahan kepada pengguna. Sedangkan sistem operasi mainframe biasanya hanya berupa barisan-barisan program saja tanpa adanya GUI yang memadai.
3. Sistem operasi mainframe memiliki tingkat sekuritas yang jauh lebih baik daripada sistem operasi untuk komputer desktop.
4. Sistem operasi mainframe memiliki kecepatan dan realibilitas kerja yang jauh lebih tinggi daripada sistem operasi personal komputer. Hal ini dikarenakan sistem operasi mainframe diharuskan untuk mampu menangani ratusan program aplikasi secara bersamaan. Serta sistem operasi mainframe harus mampu mengatur sejumlah pengaksesan dan penyimpanan ke basis data secara simultan. Sedangkan sistem operasi personal komputer biasanya hanya mampu menangani beberapa program saja untuk dijalankan secara bersamaan.
8. Bagaimana secara umum sistem operasi memberitahukan kepada direktori kerja apakah path name untuk sebuah file adalah absolute atau relative?
Jawab :
Direktori adalah file, dimiliki sistem operasi dan dapat diakses dengan rutin-rutin di sistem operasi. Kebanyakan informasi berkaitan dengan penyimpan. Meski beberapa informasi direktori tersedia bagi pemakai atau aplikasi, informasi itu umumnya disediakan secara tidak langsung. Pemakai tidak dapat mengakses direktori secara langsung meski dalam mode read-only.
Direktori juga menyediakan pemetaan nama file ke file. Informasi terpenting direktori adalah yang berkaitan dengan penyimpanan, termasuk lokasi penyimpanan dan ukuran file yang disimpan. Pada sistem bersama (shared system), informasi yang terpenting adalah informasi mengenai pengendalian akses file. Satu pemakai adalah pemilik file yang dapat memberi wewenang pengaksesan ke pemakai-pemakai lain.
Aturan penamaan direktori mengikuti aturan penamaan file karena direktori merupakan file yang khusus.
Jalur pengaksesan (path name).
Bila sistem file diorganisasikan dengan pohon direktori,maka diperlukan cara menspesifikasikan nama file. Masalah penamaan file diselesaikan dengan penamaan absolut dan penamaan file relatif. Terdapat dua jalur, yaitu :
a) Nama jalur absolut (absolute pathname).
Nama jalur dari direktori root ke file, selalu dimulai dari
direktori root da nakan bernilai unik.
b) Nama jalur relatif (relative pathname).
Jalur relatif terhadap direktori kerja/saat itu (working atau current director). Pemakai dapat menyatakan satu direktori sebagai current directory. Nama jalur yang tidak dimulai direktori root berarti relatif terhadap current directory.
9. Mengapa shell bukan bagian dari sistem operasi?
Jawab :
Shell delete command interpreter yaitu Program yang menerima masukan berupa perintah ke sistem, dan menterjemahkan menjadi aktivitas sistem komputer. Tidak termasuk sistem operasi karena,shell di dalam kegiatannya tidak menjembantani antara user dengan hardware. Program ini di dalam menjalankan perintah mengakses informasi yang tercantum di sistem operasi.
10. Berikan sebuah contoh bagaimana mekanisme dan kebijaksanaan bisa terpisah dengan baik dari pejadwalan. Buat sebuah mekanisme yang bisa mengijinkan sebuah parent process untuk mengontrol kebijaksanaan penjadwalan children.
Jawab :
Mekanisme merupakan penjelasan bagaimana melakukan sesuatu. Sedangkan kebijakan menentukan apa yang akan dilakukan. Dalam melakukan sebuah pemrosesan mekanisme tidak bisa diubah sedangkan kebijakan dapat diubah agar bila terjadi sesuatu hal dapat diantisipasi. Kebijakan penting untuk mengatur semua alokasi sumberdaya dan menjadwalkan masalah serta menentukan perlu atau tidaknya mengakolasikan sumber daya. Oleh karena itu antara mekanisme, kebijakan dan penjadwalan harus dipisahkan.
Contoh sebuah mekanisme yang bisa mengijinkan sebuah parent process untuk mengontrol kebijaksanaan penjadwalan children adalah pada sistem operasi UNIX. Sistem operasi ini mempunyai system call fork yang berfungsi untuk membuat proses baru. Proses yang memanggil sistem call fork ini akan dibagi menjadi dua, yakni proses induk dan proses turunan yang identik. Fork ini berfungsi sebagai manajemen proses. Proses ini independen satu sama lain namun memiliki instruksi yang berbeda sama sekali. Jadi pengeksekusian program bisa dilaksanakan terus menerus tanpa harus menunggu sistem child selesai memproses. Dan bisa juga instruksi program induk mengatur pengeksekusian program anak atau turunan.
11. Model Client-Server tekenal didalam distributed systems. Dapatkah juga digunakan dalam sistem komputer tunggal?
Jawab :
Dapat, karena sistem terdistribusi adalah sistem yang proses kerjanya membagi tugas proses untuk dijalankan oleh beberapa prosesor yang menjalankan fungsi masing-masing. Dan hal ini dapat dijalankan dalam sistem komputer tunggal. Contohnya dengan adanya prosesor dual core yang masing-masing prosesor melakukan fungsi tertentu serte keduanya terhubung oleh jaringan komunikasi data. Dengan menerapkan sistem terdistribusi ini maka akan meningkatkan kecepatan proses, penyediaan data dan peningkatan kehandalan kerja komputer.
12. Mengapa proses tabel membutuhkan sistem timesharing? Apakah hal ini juga dibutuhkan dalam system personal computer yang pada suatu saat hanya terdapat satu proses yang sedang bekerja dan mengambil alih mesin sampai proses tersebut selesai?
Jawab :
Karena sistem timesharing dapat mengatur penjadwalan pemrosesan data maka kecepatan proses akan menjadi lebih cepat.
Ya, teknologi sistem timesharing mutlak diperlukan untuk menjadwal pemrosesan data oleh prosesor. Walaupun hanya melakukan satu proses saja untuk dapat mempercepat kinerja pemrosan maka timesharing diperlukan. Bila prosesor harus langsung mengakses data dari memory permanent maka akan membutuhkan waktu yang lama untuk pemrosesan. Bahkan jika pengguna hanya menggunakan satu program saja pada satu waktu. Sistem operasi perlu mendukung program internalnya sendiri, seperti manajemen memori. Dengan kata lain, semua aktivitas tersebut adalah harus dilaksanakan dengan sistem timesharing.
13. Apa perbedaan mendasar diantara blok special file dan character special file?
Jawab :
Perbedaan mendasar dari block special file dan character special file adalah proses pengiriman atau pentransferan datanya. Bila block special file transfer data dilakukan perblock perintah, sedangkan untuk character special file pentransferan datanya dilakukan perkarakter.
Contoh block special file adalah proses pentransferan data pada media penyimpanan. Seperti Harddisk, CD-R, Floppy disk, Flash disk. Dan contoh penggunaan character special file adalah pada mouse dan keyboard.

Tugas 2 Sistem Operasi

Posted by : Unknown
Date :Minggu, 15 Maret 2015
With 0komentar
Next Prev
▲Top▲