Tuesday, September 26, 2017

Лабораторын ажлын даалгавар №7-8 (2022 он, Намар)

Лаб №7-8 ARM Cortex A8 Сургалтын киттэй танилцах, Windows, Ubuntu хоёрын хооронд өгөгдөл солилцох, ARM-Linux-GCC компайлор суулгах, Sin210 (ARM Cortex A8 Сургалтын кит) хавтан дээрх С програмын жишээ бодлого болон 4ш LED-ийг ажиллуулах
1. Ажлын зорилго
1. Linux үйлдлийн систем дээр ажиллах ARM Cortex A8 Сургалтын киттэй танилцах (Багш танилцуулна)
2. Windows болон вируал машин дээр суусан (Virtual Machine) Ubuntu хоёрын хооронд өгөгдөл солилцох (Share Tool) пакежыг суулгах
3. ARM Cortex A8 Сургалтын кит дээр ажиллах ARM-Linux-GCC С-ийн компайлорыг суулгах
4. Sin210 сургалтын кит дээр бодлого бодох
5. Sin210 (ARM Cortex A8 Сургалтын кит) хавтан дээрх 4ш LED-ийг ажиллуулах

2. Лабораторид хэрэглэгдэх төхөөрөмж / бэлтгэл ажил
1. Windows үйлдлийн бүхий РС, виртуал машин дээр график горимоор суусан Ubuntu
2. ARM-Linux-GCC 4.3.2.tar файл
3. LED хэрэглээний жишээ код
4. Linux орчны файл задлах болон бусад командуудыг мэдэх

3. Лабораторын ажлын даалгавар
1. Үндсэн Windows ҮС  болон VM дээр суусан Ubuntu сервер хоёрын хооронд файл солилцох (share)
  • apt-get –y upgrade
  • apt-get –y install linux-headers-server build-essential
  • VMworkstatin-ийн vm-руу орж install Wmware tools сонгоно
  • Ubuntu-ийн цонхон дээр VMwareTools-8.8.4-743747.tar.gz файл гарч ирнэ.
  • cp дээр VMwareTools-8.8.4-743747.tar.gz /home/ee331 хуулна
  • tar xzvf VMwareTools-8.8.4-743747.tar.gz гэж задлана
  • vmware-tools-distrib хавтас үүснэ
  • cd vmware-tools-distrib хавтас руу орно
  • ./vmware-install.pl –d 
  • Reboot
  • Ubuntu-гийн /home/ee331 хавтас руу windows-c шууд файл хуулж болно
2. ARM Cortex A8 сургалтын кит дээр ажиллах С-ийн компайлор суулгах
  • /home/YOUR ACCOUNT
  • 4.3.2.tar файлыг Windows-ын орчноос Ubuntu-ийн arm хавтас руу шууд маузаар зөөх буюу хуулна. Жич: Cope => Paste хийж Ubuntu-н орчинд 4.3.2.tar 88MB байгаа эсэхийг шалгаарай. Дутуу хуулагдсан бол задлахад алдаа өгнө. Устгаад ахиж хуулж үзээрэй.
  • Ubuntu-гийн график орчинд 4.3.2.tar шахсан файлыг задлана (Windows дээр 4.3.2.tar arm cross compiler файлыг winzip ашиглан задалж болно)
  • Linux CLI дээр задлах: tar xfz 4.3.2
  • 4.3.2 хавтасан дотор arm-none..., bin, lib, libexec, share таван хавтас үүснэ
  • cd ~ root хавтас руу очно
  • nano .bashrc: унших замыг зааж өгнө
  • Дараах 2 мөрийг хамгийн доор нэмнэ
  • PATH=/home/YOUR ACCOUNT/4.3.2/bin:$PATH
  • export PATH
  • Хадгалж гараад: source .bashrc файлыг дахин ачаална
  • arm-linux-gcc –v : ARM процессорт зориулсан gcc сross compiler-ийг суулгана
  • Permission denied алдаа гарвал тухайн файлыг chmod 755 filename хандалтын эрхийг өөрчилнө
  • Амжилттай болвол дараах мессеж гарна

ARM-Linux-GCC зөв суусан эсэхийг тест хийх

Compile Hello program World, test cross tool chain
Write down the following Hello World program, save it as hello.c
#include <stdio.h>
int main()
{
printf("Hello World!\n");
return 0;
}
The following command:
# arm-linux-gcc -o hello hello.c
Source program error would be prompt, without any prompting words, passed, can be downloaded to the ARM target board operation!
Then you can enter the filehello command, type to view the generated Hello file, it is necessary to pay attention to generate the executable file can only be run on a ARM system, cannot be run in the X86 PC machine.

./hello ажиллуулж үзэхэд алдаа өгнө. Энэ нь зөвхөн кит дээр ажиллах файл юм.

3. ARM Cortex A8 сургалтын китийг Hyper Terminal ашиглан сериалаар холбох
Hyper Terminal суулгана. Порт: СОМ1, Baud Rate: 115200 гэж тохируулна.


4. hello.exe файлыг 
ARM Cortex A8 сургалтын кит дээр ажиллуулах

#include <stdio.h>
int main()
{
printf("Hello World!\n");
return 0;
}

Sin210 китэд зориулж компайл хийнэ.

# arm-linux-gcc -o hello hello.c

hello.exe файлыг 3-р даалгаврын дагуу кит рүүгээ хуулан ./hello гэж ажиллуулж үзнэ

Үр дүн:
Hello World!

Дараах бодлогуудыг бодон Sin210 кит дээр ажиллуулж үз.
       1. Гараас оруулсан тойргын радиусаар талбай болон уртыг олдог програм бич.
2. Гараас оруулсан бүхэл тоо тэгш эсвэл сондгой гэдгийг тодорхойлдог програм бич.
3. N натурал тоо өгөгдсөн бол энэ тоо хүртэлх 2 болон 3-т зэрэг хуваагддаг тоонуудыг олох програм бич.

5. Sin210 хавтан дээрх 4ш LED-г ажиллуулах
  • /home/ee332/mkdir app ==> хавтас үүсгэнэ
  • led_test_def.c файлыг ашиглах материал хэсгээс татан авч Ubuntu-ийн /home/ee332/app хавтас руу хуулна
  • led_test_def.c файлыг gedit ашиглан нээж засна 
  • arm-linux-gcc -o led_def led_test_def.c гэж компайл хийнэ
  • Компайл хийсний үр дүнд led_def.exe файл үүснэ
  • Hyper terminal-р sin210 китийг холбож үүссэн led_def.exe файлыг sin210 хавтан руу дамжуулна.
  • Hyper terminal-ын Transfer menu-руу орж send file-c дамжуулах файлаа сонгоно send хийнэ.
  • ехе файлыг /root хавтас руу хуулан ажиллуулна

6. Sin210 хавтан дээрх 4ш LED-г ашиглан дараах даалгаврыг гүйцэтгэх
  • 4ш LED-үүдийг 1 Гц-ийн давтамжтай унтрааж асаах
  • Сөөлжилж асаах (1,3<==> 2, 4)
  • Гэрлийн эффект хийх (1==>2==>3==>4==>3==>2==>1)
  • 4 битийн тоолуур хийх
4. Лабораторийн тайлан
1. ARM Cortex A8 Сургалтын китийн онцлог
2. ARM-Linux-GCC С-ийн компайлорын тухай бичих
3. LED-ийн С дээр бичсэн кодоо бичиж тайлбарлах
4. Лабораторын ажлаар олж авсан мэдлэгээ дүгнэж бич

5. Лабораторийн тайлан өгөх, хамгаалах
1. 1 баг 1 тайлан бичнэ.
2. Лаб-ын тайланг бусдаас хуулахгүй, өөрийн үгээр илэрхийлсэн байна.
3. Лаб-ын тайланг Лаб №2 дээр үүсгэсэн өөрийн вэб хуудсан дээр Homework_56 гэсэн нэрэн дээр холбоос /hyperlink/ үүсгэн word файл эсвэл html хэлбэрээр харуулна.

6. Ашиглах материал
led жишээ С файл: https://sites.google.com/site/csmsce/led_test_def.c?attredirects=0&d=1
led жишээ ехе файл: https://sites.google.com/site/csmsce/led_def?attredirects=0&d=1

Revised: 2018.10.11

No comments:

Post a Comment