Современная электроника №8/2022

ИНЖЕНЕРНЫЕ РЕШЕНИЯ 46 WWW.SOEL.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА ◆ № 8 2022 дискетой в левой верхней строке меню всего экрана, чтобы записать эту кон- фигурацию на диск. При этом на C51 сгенерируется текст программы инициализации устройств InitDevice.c (чтобы написать её вруч- ную, да ещё без ошибок, а это несколь- ко страниц текста на C51, уйдёт не один день), к которой будет обращение из основной программы в самом начале её работы. После этого основную про- грамму необходимо оттранслировать, выбрав в меню экрана опцию Project и в открывшемся окне – подопцию Build Project. После трансляции создаст- ся файл EFM8SB10F8G-A-QFN24.hex, о котором уже упоминалось в начале этого раздела статьи, а в нижней части экрана в специальном окне, отражаю- щем результат трансляции, будет сле- дующее сообщение: Program Size: data=116.1 xdata=0 const=0 code=5066 LX51 RUN COMPLETE. 0 WARNING(S), 0 ERROR(S) Finished building target: EFM8SB10F8G-A-QFN24.omf Из этого сообщения следует, что про- грамма использует практически всю внутреннюю оперативную память (data = 116,1 байт), размер которой 128 байт, внешняя дополнительная оперативная память с непрямой адре- сацией размером 512 байт не исполь- зуется (xdata = 0), а размер кодовой части программы составляет около 5 кБ (code = 5066), т.е. укладывается в макси- мальный размер программной памяти для этого МК, равный 8 кБ. И последнее, что следует добавить по поводу программных средств. В Интернете можно найти массу при- боров с датчиками BME280 и BMP280, которые показывают давление P, влаж- ность H и температуру T с точностью до десятых и даже до сотых долей соот- ветствующих физических величин, т.е. до 0,01 мм рт. ст., 0,01% и 0,01°C соот- ветственно. Такую точность измерения действительно обеспечивает 20-разряд- ный АЦП, встроенный в BME280. Одна- ко погрешность измерения самих дат- чиков P, H и T (встроенных в BME280) составляет до 2 (а то и более) целых единиц соответствующих физиче- ских величин (± 2 мм рт. ст., ± 2–3% и ± 2°C), не говоря уже о десятых и тем более сотых долях. Это автор обнару- жил, наблюдая за показаниями двух идентичных приборов, стоящих рядом. В связи с этим на экранЖКИ програм- мой выводятся именно целые числа, показывающие давление, влажность и температуру. Такое положение вещей позволяет отказаться от использова- ния библиотеки с плавающей запя- той, «отъедающей» более 3 кБ памяти МК, для расчётов P, H и T с точностью до 0,01 единиц соответствующейфизи- ческой величины, поскольку такая точ- ность является бессмысленной. Разводка плат устройства и их внешний вид Разводка основной платы устрой- ства сделана автором с помощью про- граммы SprintLayOut v.6, файл разводки в формате *.lay6 приведён в дополни- тельных материалах к статье на сайте журнала. Из рисунков разведённой пла- ты и её внешнего вида (рис. 4) можно заключить, что её разводка очень про- ста, а сама плата миниатюрна (размер всего 16 × 18 мм). Здесь следует добавить, что при программировании МК с помо- щьюUSB DEBUG адаптера по интерфей- Рис. 4. Разводка и общий вид платы устройства а, в – вид со стороны расположения компонентов, б, г – вид с обратной стороны Рис. 5. Разводка и общий вид платы стабилизатора 1,5 В а, в – вид со стороны расположения компонентов, б, г – вид с обратной стороны а б в г а б в г

RkJQdWJsaXNoZXIy MTQ4NjUy