Цель работы: Знакомство с архитектурой МК ATmega32, изучение средств программирования в среде Code Vision AVR, средств моделирования в среде AVR Studio 4, программирования регистров портов МК и способов доступа к постоянной памяти МК EEPROM.
Задачи работы:
1) Изучение ядра и встроенной в корпус периферии МК ATmega32
2) Построение и компиляция проекта в Code Vision AVR
3) Запуск.COFF-файла на моделирование в среде AVR Studio 4
4) Написание программных модулей записи/чтения данных из регистров портов МК
5) Написание программных модулей записи/чтения данных из памяти EEPROM МК.
Введение. Понятие микроконтроллера и сфера их применения
Контроллер – это законченное электронное устройство, обычно выполненное в виде платы (плата контроллера) и предназначенное для приема и обработки сигналов от датчиков, а также для управления внешними устройствами на основании результатов обработки принятых сигналов [1].
Микроконтроллер – это программно-управляемая интегральная микросхема, применяемая для построения различных котроллеров [1].
STM32 или AVR. Как изучать программирование микроконтроллеров.
Микроконтроллером называется интегральная схема, объединяющая в одном кристалле процессор, память и устройства ввода-вывода [2].
Современные средства интеллектуальной техники нацелены на решение весьма широкого круга задач. Конструктивное решение возникающих при этом проблем достигается за счет встроенного в них «мозгового центра» – МК. Естественным образом решаются задачи использования МК в разнообразных специализированных средствах, тем не менее, на современном рынке аппаратных решений (гаджетов) все чаще встречается обычная бытовая техника «интеллектуально усиленная» встроенными системами на базе МК [3].
Архитектура МК ATmega 32
В данной лабораторной работе используется микроконтроллер ATmega32, имеющий следующие характеристики:
· Высокопроизводительные, мало потребляющие AVR 8-разрядные микроконтроллеры
· Развитая RISC архитектура:
— 131 исполняемых команд, большинство за один машинный такт
— 32 рабочих регистра общего назначения
· Энергонезависимая память программ и данных
— 32К байт внутрисистемно самопрограммируемой FLASH памяти с количеством циклов перепрограммирования до 10 000.
— 1024 байт EEPROM с допустимым количеством циклов стирания записи до 100 000.
— 2К байт внутренней SRAM
— два 8-битных таймера/счётчика с программируемым предделителем и режимом сравнения
— один 16-битный таймер/счётчик с программируемым предделителем, режимом сравнения и захвата
— счётчик реального времени с программируемым генератором
— четыре ШИМ (широтно-импульсная модуляция) генератора
— 8-и канальный, 10-и битный АЦП (аналогово-цифровой преобразователь)
— программируемый USART (для связи с ПК)
— Master/Slave SPI последовательный интерфейс
— Программируемый Watchdog таймер с программируемым генератором
— Встроенный аналоговый компаратор
Чем отличается МИКРОКОНТРОЛЛЕР и МИКРОПРОЦЕССОР
— Reset по включению питания и выключение при снижении напряжения питания
— Внутренний калиброванный RC генератор
· 32 программируемых вывода вход-выход и 1 вход
· 40 выводной корпус PDIP, 44 выводной корпус TQFP, и 44 контактный MLF
— 2.7 В до 5.5 В для ATmega32L (режим пониженного энергопотребления)
— 4.5 В до 5.5 В для Atmega32
· Тактовая частота: 0-8 МГц Atmega32L — 0-16 МГц Atmega32
Блок- схема:
Рис. 1.1 Архитектура МК ATmega32/L
Рис. 1.2 Расположение выводов МК ATmega32/L
Atmega32/L является КМОП (комплементарная структура металл-оксид-полупроводник) 8-битным микроконтроллером построенным на расширенной AVR RISC архитектуре. Используя команды исполняемые за один машинный такт, контроллер достигает производительности в 1 MIPS на рабочей частоте 1 МГц, что позволяет разработчику эффективно оптимизировать потребление энергии за счёт выбора оптимальной производительности.
AVR ядро сочетает расширенный набор команд с 32 рабочими регистрами общего назначения. Все 32 регистра соединены с АЛУ (арифметическо-логическое устройство), что обеспечивает доступ к двум независимым регистрам на время исполнения команды за один машинный такт. Благодаря выбранной архитектуре достигнута наивысшая скорость кода и соответственно высокая производительность в 10 раз превосходящая скорость соответствующего CISC микроконтроллера.
Компилятор Code Vision AVR
Code Vision AVR – это компилятор или интегрированная среда разработки программ для МК семейства AVR фирмы Atmel, предназначенный для использования вместе с отладчиком AVR Studio [3].
Кроме стандартных библиотек языка Си, компилятор Си Code Vision AVR имеет библиотеки для:
— температурного датчика LM75 от National Semiconductor;
— часов реального времени PCF8563, PCF8583 от Philips и DS1302, DS1307 от Dallas Semiconductor;
— температурного датчика DS1820/DS18S20 от Dallas Semiconductor;
В результате трансляции программы формируются следующие файлы:
prj – файл проекта Code Vision AVR;
txt – файл комментариев. Это простой текстовый файл, который вы заполняете по своему усмотрению;
c – текст программы на языке СИ;
asm – текст программы на Ассемблере (сформирован Code Vision);
cof – формат для передачи программы в другие системы для отладки;
eep – содержимое EEPROM (формируется одновременно с hex -файлом);
hex – результат трансляции программы;
inc – файл-дополнение к программе на Ассемблере с описанием всех заранее зарезервированных ячеек и определением констант;
lst – листинг трансляции программы на Ассемблере;
map – распределение памяти МК для всех переменных программы СИ;
obj – объектный файл (промежуточный файл, используемый при трансляции;
rom – описание содержимого программной памяти (та же информация, что и в hex-файле, но в виде таблицы);
vec – еще одно дополнение к программе на Ассемблере содержащее команды переопределения векторов прерываний;
cwp – файл построителя проекта. Содержит все параметры, которые вы ввели в построитель.
Все перечисленные выше файлы имеют одинаковые имена, соответствующее имени проекта. Кроме перечисленных выше файлов, директория проекта может содержать несколько файлов с расширением типа c~, pr~ или cw~. Это страховочные копии соответственно файлов c, prj и cwp. То же самое, что файл bak для текстовых файлов.
При написании программы в Code Vision AVR применяют операнды, которые используются при выполнении операций.
Операнд – это константа, литерал, идентификатор, вызов функции, индексное выражение, выражение выбора элемента или более сложное выражение, сформированное комбинацией операндов, знаков операций и круглых скобок [4].
Комбинация знаков операций и операндов, результатом которой является определенное значение, называется выражением. Знаки операций определяют действия, которые должны быть выполнены над операндами.
В Code Vision AVR выполняются следующие операции:
Унарное выражение состоит из операнда и предшествующего ему знака унарной операции и имеет следующий формат: знак_унарной_операции операнд. В таблице 1 перечислены унарные операции компилятора Code Vision AVR и приведены их знаки.
Таблица 1. Унарные операции компилятора CodeVisionAVR
Знак операции | Операция |
$ $ | Арифметическое описание (отрицание и дополнение) |
~ | Побитовое логическое отрицание (дополнение) |
! | Логическое отрицание |
Таблица 1. (продолжение)
* | Разадресация (косвенная адресация) |
Сдвиг влево | |
> > | Сдвиг вправо |
> | Больше |
Меньше | |
< = | Меньше или равно |
> = | Больше или равно |
== | Равно |
! = | Не равно |
< = | Сдвиг влево с присваиванием |
> > = | Сдвиг вправо с присваиванием |
) сравнивает каждый бит первого операнда с соответствующим битом второго операнда. Если оба сравниваемых бита единицы, то соответствующий бит результата устанавливается в 1, в противном случае – в 0.
В Code Vision AVR имеется средство для облегчения разработчику написания программы. Это так называемый мастер – Автоматический генератор программ Code Wizard AVR. Code Wizard AVR позволяет по заданию разработчика автоматически сгенерировать весь необходимый код для выполнения таких функций, как: — организация доступа к внешней памяти; — сброс и исходная идетификация чипа; — инициализация портов ввода/вывода; — инициализация внешних прерываний; — инициализация сторожевого (Watchdog) таймера; — инициализация UART (USART) и прерывания, управляющего буфером последовательной связи; — инициализация аналогового компаратора; При создании нового проекта разработчику сразу будет предложено использовать Автоматический программный генератор Code Wizard AVR. Кроме того, Code Wizard AVR можно запустить на любом этапе работы над проектом. Эмулятор AVR Studio 4 Программная среда AVR Studio – это мощный современный программный продукт, позволяющий производить все этапы разработки программ для любых МК серии AVR. Пакет включает в себя специализированный текстовый редактор для написания программ, мощный программный отладчик [3]. Кроме того, AVR Studio позволяет управлять целым рядом подключаемых к компьютеру внешних устройств, позволяющих выполнять отладку, а также программирование («прошивку») микросхем AVR. Если программа не содержит критических ошибок и процесс трансляции прошел успешно, то в директории проекта автоматически появляются несколько файлов. Из появившихся файлов нам необходим только тот, который имеет расширение.hex — это файл, который содержит результирующий код трансляции. Он будет служить источником данных при прошивке программы в программную память МК. В hex-файле находится определенным способом закодированная программа в машинном коде. Именно этот файл используется программатором для «прошивки» программной памяти МК. Любой программатор поддерживает hex-формат и распознает записанные туда коды автоматически. Программная среда AVR Studio работает с проектами, главный из которых – файл проекта. Он имеет расширение aps. Файл проекта содержит сведения о типе процессора, частоте тактового генератора и т.д. он также содержит описание всех остальных файлов, входящих в проект. Все эти сведения используются при отладке и трансляции программы. Упражнение 1. Задача. К выводу 0 порта B микроконтроллера ATmega32 подключен светодиод. Написать программу мигания светодиода с задержкой 250 мс и запустить программу на отладку в AVR Studio. Рабочая частота МК 4 МГц. Создать новый проект в среде программирования Code Vision AVR. Рис. 1.9. Создание проекта в Code Vision AVR Воспользоваться Code Wizard AVR для автоматической генерации кода. Рис. 1.10. Использовать мастер генерации кода Рис. 1.11. Тип МК – ATmega Указать мастеру устройство ATmega32. Рис. 1.12. Выбор чипа МК Вывод 0 порта B определить как Output. Рис. 1.13. Конфигурация порта В Сгенерировать данные настройки. Рис. 1.14. Генерация настроек Сохраняем сгенерированные файлы: < Name>.c, < Name>.prj, < Name>.cwp Рис. 1.15. Сохранение *.c файла Рис. 1.16. Сохранение *.prj файла Рис. 1.17. Сохранение *.cwp файла В появившемся сгенерированном коде добавить подключение библиотеки прерываний, то есть дописать строку #include < delay.h>. В бесконечном цикле добавить строки: Скомпилировать проект, нажав кнопку – Build all project files. Если нет ошибок, то запустить отладку, нажав кнопку – Run the debugger. В открывшемся окне AVR Studio 4, нажать кнопку “Open”. В нужной директории выбрать файл с расширением.COFF. Затем появится окно, в котором будет предложено сохранить файл отладки с именем < Имя_файла>_cof. Нажать кнопку «Сохранить». Далее, будет предложено выбрать отладочную платформу и устройство. Выбрать AVRSimulator и ATmega32 соответственно. Нажать кнопку “Finish”. Задачи на самостоятельную работу: 1. Реализовать побитовую конъюнкцию числа, записанного в порт А, и «1», сдвинутой влево на пять разрядов. Инвертировать результат и записать в порт С. Порт А сконфигурировать как вход, порт С – как выход. Использовать МК ATmega32 с частотой кварца 4МГц. 2. Число, поступающее в порт В записать в память EEPROM. Из памяти это число передать в порт С, а EEPROM-адрес этого числа записать в порт А. Порт В сконфигурировать как вход, порты А и С – как выходы. Использовать МК ATmega32 с частотой кварца 4МГц. Контрольные вопросы: 1) Какое ПО (программное обеспечение) используется для написания кода и получения.hex файла в данной лабораторной работе? 2) Какие файлы формируются после компиляции программы? Какие из них нам необходимы в данной лабораторной работе? 3) Что такое МК, сфера его применения? 4) Регистры портов МК. Назначение. 5) Виды ПО для МК 6) Виды эмуляторов для тестирования программ МК. Отличия. 7) RAM/ROMпамять. Назначение. 8) SRAMпамять. Назначение. 9) FLASHпамять. Назначение. 10) EEPROMпамять. Назначение. Регистры EEPROM. Какой регистр используется для записи/чтения из EEPROM? 11) Регистровая память. Назначение. Список использованных источников: 1. Радио-ежегодник, PROTEUS по-русски, 2013 г. 2. Моршнев В.В., Оценка и анализ эффективности архитектуры микроконтроллеров. — «Числом гармонию измерить». – 28 с. 3. Белов А.В., Создаем устройства на микроконтроллерах. – СПб.: Наука и Техника, 2007. – 304 с.: ил. 4. Лебедев М.Б., CodeVisionAVR: пособие для начинающих. – М.: Додэка – ХХI, 2008. – 592 с.: ил. 5. Роман Абраш, Справочный материал «Книга по работе с WinAVR и AVR Studio» г. Новочеркасск. Выпуск № 4, 2010. – 5 с. 6. Роман Абраш, Справочный материал «Книга по работе с WinAVR и AVR Studio» г. Новочеркасск. Выпуск № 5, 2010. – 4 с. 7. Роман Абраш, Справочный материал «Книга по работе с WinAVR и AVR Studio» г. Новочеркасск. Выпуск № 8, 2010. – 5 с. Лабораторная работа №1 Введение в программирование для микроконтроллеров (МК) Цель работы: Знакомство с архитектурой МК ATmega32, изучение средств программирования в среде Code Vision AVR, средств моделирования в среде AVR Studio 4, программирования регистров портов МК и способов доступа к постоянной памяти МК EEPROM. Задачи работы: 1) Изучение ядра и встроенной в корпус периферии МК ATmega32 2) Построение и компиляция проекта в Code Vision AVR 3) Запуск.COFF-файла на моделирование в среде AVR Studio 4 4) Написание программных модулей записи/чтения данных из регистров портов МК 5) Написание программных модулей записи/чтения данных из памяти EEPROM МК. Источник: lektsia.com СИМУЛЯТОР VS ЭМУЛЯТОР VS РЕАЛЬНОЕ ТЕСТИРОВАНИЕ УСТРОЙСТВ: ОСНОВНЫЕ ОТЛИЧИЯТестирование — важная часть любого процесса разработки. Это включает в себя выявление и исправление ошибок — будь то выявление проблем с навигацией, проблемы с регистрационными формами, обработкой платежей или просто разница в размере текста. В любом случае тестирование гарантирует, что изменения не повлияют негативно на работу пользователей на разных устройствах. Важно использовать подходящие устройства при тестировании веб-сайтов и приложений. Поскольку мобильные устройства могут иметь разные операционные системы, браузеры и аппаратные конфигурации, тестирование на разных устройствах становится еще более важным. Давайте рассмотрим различные решения для мобильного тестирования, чтобы лучше понять это. Типы мобильных устройств для тестированияНаши решения для мобильных устройств меняются по мере развития технологий. Крайне важно тестировать мобильные приложения на разных мобильных устройствах и в разных браузерах, чтобы гарантировать, что приложения не будут работать с разным разрешением экрана и в разных конфигурациях. В результате мобильные тестировщики используют два типа устройств для проверки. их приложения. Это реальные устройства и виртуальные устройства. Что такое реальное устройство для тестирования?Настоящие устройства — это настоящие телефоны, которые используются для тестирования веб-сайта или приложения, чтобы убедиться, что они работают и ведут себя так, как ожидает конечный пользователь. Как правило, у группы тестирования есть как минимум два устройства Android, iOS, Blackberry, планшеты и iPad с разными размерами экрана, конфигурациями оборудования и версиями ОС. Каждое мобильное устройство имеет уникальные функции и тестировщиков. необходимо оценить, как эти характеристики влияют на приложение. Доступ к такому широкому спектру устройств делает мобильные приложения более функциональными, но также усложняет тестирование. Преимущества реальных устройств для тестирования
Недостатки реальных устройств тестирования
Что такое виртуальное тестовое устройство?
Преимущества виртуальных устройств для тестирования
Недостатки виртуальных устройств для тестирования
Когда использовать: реальное или виртуальное тестовое устройство.В дополнение к динамическим функциям как реальные, так и виртуальные устройства обладают уникальными преимуществами, которые делают их подходящими для различных этапов тестирования. Эти устройства для тестирования могут помочь организациям в выполнении их требований при правильном применении к мобильным приложениям. тестирование. Говоря о начальном этапе тестирования, виртуальные тестовые устройства подходят лучше всего. Они предоставляют лучшие средства отладки, а это означает, что цикл тестирования приложения ускоряется. Кроме того, виртуальные устройства для тестирования более экономичны, чем покупка новых смартфонов. В мире доступно несколько различных мобильных сетей, поэтому тестировщики могут тестировать свои приложения на разных типах смартфонов, используя разные сети. Наилучшие способы тестирования приложений до версии предназначены для реальных устройств, поскольку они позволяют тестировщикам тестировать свои приложения в самых разных мобильных сетях по всему миру. Это способствует более точному тестированию, позволяя тестировщикам тестировать все возможные сценарии. Поэтому перед каждым выпуском необходимо проводить дымовое тестирование, проверку работоспособности сети, совместимость и значительную часть регрессионного тестирования на реальных устройствах. Реальное тестовое устройство и виртуальное тестовое устройствоЧто такое симуляторы?Симуляторы — это виртуальное тестирование. программное обеспечение, которое позволяет вашему компьютеру запускать определенные программы, разработанные для другой операционной системы. Как правило, они предназначены для iPhone и iPad, а не для устройств Android, которые можно эмулировать. Вы можете использовать симуляторы, чтобы дать представление о том, как что-то может работать в реальном мире, скопировав это в виртуальную среду. Они имитируют основы поведения, но не обязательно следуют всем правилам. Когда использовать симуляторы?Команда тестирования предпочитает симуляторы в качестве виртуального устройства тестирования, когда требование состоит в выполнении тестовых сценариев на внутренних компонентах мобильного устройства, таких как его внутреннее оборудование, микропрограмма и т. д. Симуляторы подходят для модульного и автоматизированного тестирования. Что такое эмуляторы?Эмулятор — это программа, которая имитирует аппаратное и программное обеспечение какого-либо другого устройства на вашем компьютере и дублирует функцию, существующую в реальности. Он работает в виртуальной среде, поэтому не так реален, как физическое устройство. Эмуляция — это, по сути, виртуализация реальной вещи. Немногие из широко используемых эмуляторов — это эмулятор Android, эмулятор Galaxy и эмулятор iPhone. Когда использовать эмуляторы?Всегда рекомендуется использовать эмуляторы, когда группа тестирования хочет протестировать внешнее поведение мобильного устройства, например расчеты, обработку транзакций и т. д. Обычно эмуляторы используются, когда требуется проверить взаимодействие программного обеспечения с базовым оборудованием или при тестировании. Программное или аппаратное обеспечение вместе. В дополнение к модульному тестированию и автоматическому тестированию эмуляторы целесообразно использовать, если требуется какая-либо отладка. Эмуляторы и симуляторы Хотя эмуляторы и симуляторы выполняют схожие задачи, между ними есть несколько существенных различий. >Категория Эмуляторы Симуляторы Целевая область Эмуляторы охватывают все возможности реальных устройств, т. е. аппаратное обеспечение, программное обеспечение, ОС. Моделирование только традиционного внутреннего поведения устройств, а не аппаратного обеспечения, является целью симуляторов.Производительность Эмуляторы медленнее из-за задержки. Симуляторы работают быстрее. Внутренняя структура Написано на машинном уровне языки ассемблера. Написано на языках высокого уровня. Отладка Эмуляторы используются для отладка. Симуляторы не используются для отладки. Производство Производители устройств. Производители устройств и другие компаний.Пример Software Development Kit (SDK) для Android. Симулятор iOS.Реальное устройство, эмуляторы и симуляторы: когда тестировать на каком устройстве?Эффективная стратегия тестирования помогает удовлетворить все требования к качеству и удобству использования, независимо от того, выполняется ли оно вручную или автоматизировано. Выбор подходящего мобильного устройства для тестирования — один из важнейших элементов бесперебойного процесса тестирования. Виртуальные устройства лучше всего подходят для начальных этапов разработки благодаря лучшим возможностям отладки. Поэтому на этом этапе рекомендуется использовать эмуляторы. Часто на начальных этапах необходимо выполнять частые итерации тестирования, поэтому использование симуляторов может сделать процесс более быстрым и эффективным. Тестировщики могут быстро выполнить дымовое тестирование приложения с помощью симуляторов. Однако, если реализация приложения такова, что аппаратные компоненты также задействованы, то эмуляторы считаются лучшими устройствами для решения этой задачи. Поскольку процесс относится к пользовательскому приемочному тестированию и тестированию работоспособности, реальные тестирование/физические устройства лучше из-за их уровня точности. После определенного момента регрессионное тестирование все еще можно проводить с виртуальными устройствами, но результаты могут быть скомпрометированы. Тем не менее, для тестирования приложения перед его выпуском следует использовать реальные устройства. Предприятия должны убедиться, что они выполняют большую часть своего мобильного тестирования на реальных устройствах перед запуском в производство, чтобы избежать выпуска критически важного для бизнеса приложения с ошибками. ЗаключениеВ эпоху цифровых технологий мобильные приложения продолжают играть все более важную роль в нашей повседневной жизни, что делает мобильное тестирование все более важным. Тестирование необходимо для достижения поставленных целей, но действенным способом достижения этого является выбор правильных инструментов. (настоящие устройства, симуляторы и эмуляторы). Функции, предлагаемые каждым из этих устройств, позволяют им обеспечивать оптимальные результаты при усердном использовании, что значительно упрощает тестирование. Это может помочь минимизировать расходы, сэкономить время и добиться максимальной окупаемости инвестиций. Био соавтора: Харша Миттал — сертифицированный инженер по тестированию программного обеспечения. У нее более 5 лет опыта работы в области тестирования программного обеспечения. TAG: qa Источник: atesting.ru Чем отличается тестирование на эмуляторах, фермах и физических устройствахС развитием мобильных технологий и программного обеспечения стало критически важным обеспечить высокое качество приложений, работающих на различных устройствах. Одним из вопросов, с которым сталкиваются разработчики и тестировщики, является выбор между тестированием на реальном устройстве и использованием эмулятора. Оба подхода имеют свои преимущества и ограничения, и правильный выбор может существенно повлиять на результаты тестирования и пользовательское впечатление. Эта статья может быть полезна тестировщикам и менеджерам проектов, так как позволит понять преимущества и ограничения различных методов тестирования, что поможет учесть соответствующие факторы при планировании и управлении проектами разработки мобильных приложений. Данная статья предоставляет основополагающую информацию о различиях между тестированием на реальных устройствах и эмуляторах, что может быть полезным для учебных и научных исследований в области разработки мобильных приложений и тестирования. Применение эмуляторов и симуляторов в тестировании приложенийМобильный эмулятор — программа, которая позволяет симулировать аппаратную и программную работу реального устройства, необходимого для проверки. Например, можно эмулировать не только смартфон или планшет, но даже Apple Watch и телевизионную приставку Apple TV. Чтобы включить и настроить эмулятор, необходимо установить виртуальную среду, например, Xcode или Android Studio. После настройки виртуальной среды разработчик или тестировщик получают возможность проводить всестороннее функциональное тестирование. С помощью эмулятора возможно проверить следующие программные компоненты:
История введения термина «эмуляция» компанией IBM началась в середине XX века, когда она активно разрабатывала новые компьютерные системы и технологии. (Книга Фрэнка Солтиса — “Основы AS/400”) В 1950-х годах IBM сталкивалась с проблемой совместимости программного обеспечения между различными аппаратными платформами. Каждая новая система требовала переписывания и адаптации программ, разработанных для предыдущих систем, что было трудоемким и затратным процессом. В свете этих проблем IBM начала искать способы облегчить перенос программного обеспечения на новые платформы без необходимости полного переписывания кода. В результате исследований и разработок IBM была предложена новая концепция — «эмуляция». Термин «эмуляция» был введен IBM для описания новой комбинации программы, микрокода и оборудования, которая позволяла имитировать работу одной системы на другой. Используя эту технологию, разработчики могли создавать эмуляторы, которые обеспечивали совместимость и исполняли программы, созданные для различных аппаратных платформ, без необходимости переписывания их кода. Вначале эмуляция была связана с запуском кода программ на различных платформах и термин «симуляция» использовался для программной эмуляции. Однако в дальнейшем термины «эмуляция» и «симуляция» стали использоваться более широко и в различных контекстах, иногда взаимозаменяемо. Симулятор мобильного устройства — это программное средство, созданное в виртуальной среде, которое имитирует конфигурационные настройки и поведение физического мобильного устройства. Он позволяет разработчикам и тестировщикам выполнять проверки приложений, предназначенные для мобильных устройств, без необходимости наличия физического устройства. Аппаратная и программная части смартфона взаимосвязаны и взаимодействуют между собой для обеспечения полной функциональности устройства. Ниже представлена таблица, чтобы лучше разобраться, какие компоненты относятся к программной, а какие к аппаратной части смартфона. Аппаратная часть смартфона Программная часть смартфона Источник: habr.com
Загрузка ...
|