代寫B31DG、代做C/C++程序語言

            時間:2024-03-08  來源:  作者: 我要糾錯



            B31DG - Assignment 1
            B31DG - Assignment 1 1 1.0
            Table of Contents
            Revision History ..................................................................................................................... 1
            Overview ............................................................................................................................... 1
            Application Requirements ...................................................................................................... 2
            Control Inputs .................................................................................................................... 2
            Definition of Output Signal Timing ....................................................................................... 2
            Calculation of Output Timing Parameters ............................................................................ 3
            Example Calculation – James Herd.................................................................................. 3
            Alternative DATA Output Behaviour...................................................................................... 4
            Development Environments ................................................................................................... 5
            Deliverables........................................................................................................................... 6
            Appendix 1: Output Timing Diagram........................................................................................ 7
            Appendix 2: Hardware Configuration....................................................................................... 8
            Appendix 3: PDF Report.......................................................................................................... 9
            Revision History
            Revision Date Author Notes
            1.0 26/02/2024 Kieran O'Leary Initial version.
            Overview
            The objective of this assignment is to develop a bare-metal software application on an
            embedded system-on-chip (SoC). You will be required to develop a software application that
            will generate a pair of periodically repeating digital signals using an Espressif ESP32-based
            module.
            The on/off state and nature of the periodic signals are to be controlled using two push buttons
            connected to the ESP32.
            The application is to be first implemented using the Arduino IDE and then, to be reimplemented
            directly using the Espressif Internet of Things Development Framework (ESP-IDF).
            An Integrated Development Environment (IDE) of your choice may be used with the ESP-IDF.
            Visual Studio Code (VS Code) with the ESP-IDF extension is a convenient and realistic
            development environment.
            You will be required to create and use a Git repository (hosted on GitHub) for this assignment.
            One of deliverables for the assignment will be a tagged release of the Git repository.
            B31DG - Assignment 1
            B31DG - Assignment 1 2 1.0
            Application Requirements
            The application will produce two digital outputs from the ESP32, i.e. the DATA (Signal A) and
            SYNC (Signal B) signals.
            The run-time operation of the system will be controlled using two push-button inputs to the
            ESP32, i.e. the OUTPUT_ENABLE and OUTPUT_SELECT signals.
            At compile-time, a C pre-processor directive should be implemented to determine whether the
            application should be compiled with PRODUCTION timing, as specified below, or DEBUG
            timing, which slows down all timing parameters by a factor of 1000. This will permit visual debug
            of the application using LEDs alone. A conditional code-compile should be demonstrated.
            Control Inputs
            The two push button inputs are momentary switches. Momentarily pressing either push button
            should result in a sustained state-change. The application should not require a push button to
            be continuously pressed. The application should always be aware of its operational state.
            Input Signal Description
            OUTPUT_ENABLE Connected to Push Button 1 (PB1), the OUTPUT_ENABLE input signal
            enables or disables the DATA (Signal A) output.
            OUTPUT_SELECT Connected to Push Button 2 (PB2), the OUTPUT_SELECT input signal
            controls whether the Normal or Alternative Waveform is output on the
            DATA (Signal A) output.
            Table 1. Control Input Functionality
            Definition of Output Signal Timing
            The timing diagram and table below describe the DATA and SYNC output signals in detail.
            Figure 1. Output Timing Diagram (for Normal DATA Waveform)
            Parameter Description
            a Duration of the first pulse on-time (TON(1)) in a DATA waveform cycle.
            b Duration of each pulse off-time in a DATA waveform cycle.
            c Number of pulses in a DATA waveform cycle.
            d Idle time between the end of the final pulse off-time and the start of the next
            SYNC pulse.
            TSYNC-ON The SYNC pulse on-time duration.
            This is specified as 50us (with PRODUCTION timing).
            The SYNC pulse period, i.e. TSYNC is dependent on the other parameters.
            Table 2. Output Timing Parameter Descriptions (for Normal DATA Waveform)
            B31DG - Assignment 1
            B31DG - Assignment 1 3 1.0
            Calculation of Output Timing Parameters
            The first four letters of the developer's surname are used to calculate the Output Timing
            Parameters. Each of the first four letters in the surname is mapped to a number. If the surname
            consists of less than four letters, the final letter is repeated until four letters are available for
            mapping. The alphanumeric mapping and parameter definitions are shown in the tables below.
            Letter Letter Numerical Mapping

            Table 3. Alphanumeric Mapping
            Parameter Definition
            a First Letter Numerical Mapping x 100us
            b Second Letter Numerical Mapping x 100us
            c Third Letter Numerical Mapping + 4
            d Fourth Letter Numerical Mapping x 500us
            Table 4. Output Timing Parameter Definitions (for Normal Waveform)
            The on-time duration of the first pulse is defined by the parameter a. Subsequent pulses have
            an on-time that is determined by the following formula:
            TON(n) = a + ((n-1) x 50us), where 2 ≤ n
            Example Calculation – James Herd
            To illustrate how the Output Timing Parameters are calculated, an example is provided. The
            developer's name is assumed to be James Herd.
            Parameter Numerical Mapping (for James Herd) Calculation (for James Herd)
            a “H” maps to 8 8 x 100us = 800us
            b “e” maps to 5 5 x 100us = 500us
            c “r” maps to 9 9 + 4 = 13
            d “d” maps to 4 4 x 500us = 2000us = 2ms
            Table 5. Output Timing Parameter Calculations (for James Herd)
            B31DG - Assignment 1
            B31DG - Assignment 1 4 1.0
            Alternative DATA Output Behaviour
            The Push Button 2 (PB2) input allows a user to change the behaviour of the DATA output signal.
            The OUTPUT_SELECT signal, connected to PB2, allows the user to toggle between the Normal
            and Alternative DATA output behaviour.
            There are four possible Alternative DATA output behaviours, only one of which will be
            implemented in the application. The four possible behaviours are described below.
            Option Description
            1 Remove the final 3 pulses from each data waveform cycle (i.e. c-3 pulses in a
            data waveform cycle) until the Output Select push button is pressed again.
            2 Generate a reversed form of the data waveform (from the largest pulse to the
            shortest) until the Output Select push button is pressed again.
            3 Insert an extra 3 pulses into each data waveform cycle (i.e. c+3 pulses in a
            data waveform cycle) until the Output Select push button is pressed again.
            4 Half the b and d time intervals until the Output Select push button is pressed
            again.
            Table 6. Definition of Possible Alternative DATA Output Behaviours
            In a similar manner to the calculations for the Output Timing Parameters, the Alternative DATA
            Output behaviour is dependent on the developer's surname. The behaviour is selected using the
            fifth letter of the developer's surname. If the surname consists of less than five letters, the final
            letter is repeated until a fifth letter is available.
            The appropriate behaviour to use for a given surname is determined by the following formula:
            Option Number = (Fifth Letter Numerical Mapping % 4) + 1
            To illustrate how the Alternative DATA Output behaviour is selected, an example is provided. The
            developer's name is assumed to be James Herd. As the surname only as four letters, the final
            letter is duplicated for the purposes of numerical mapping.
            Numerical Mapping (for James Herd) Alternative Behaviour Selection (for James Herd)
            “d” maps to 4 (4 % 4) + 1 = 1, therefore Option 1 is selected
            Table 7. Alternative DATA Output Behaviour Selection (for James Herd)
            B31DG - Assignment 1
            B31DG - Assignment 1 5 1.0
            Development Environments
            The above application must be implemented in two different software development
            environments:
            1. The Arduino IDE
            • Support for the ESP32-based hardware must be added through the Arduino
            Board Manager.
            2. Any IDE that the allows you to directly utilise the Espressif Internet of Things
            Development Framework (ESP-IDF).
            • Visual Studio Code (VS Code) with the ESP-IDF Extension installed is an
            appropriate solution.
            B31DG - Assignment 1
            B31DG - Assignment 1 6 1.0
            Deliverables
            The following deliverables must be submitted for this assignment:
            1. A zip file, generated by creating a tagged release, of your git repository within GitHub.
            1. The git repository must include your source code for both development
            environments, i.e. an Arduino .ino file as well as a collection of C source and
            header files.
            2. The repository should be well-structured.
            i. src, bin, docs, and tools folders may be expected (though not required).
            ii. A .gitignore file should be considered to exclude build files.
            iii. A readme.md file should be considered to explain the repository
            structure.
            2. A short video showing your hardware setup running your application.
            3. A PDF report that includes the following:
            1. Calculation of your application parameters.
            2. Oscilloscope Screen Captures:
            i. Show both DATA and SYNC digital output signals.
            ii. Oscilloscope to be triggered on Sync signal.
            iii. Horizontal timebase selected to show two Sync Pulses in image.
            3. Images of Hardware Circuit including ESP32 PCB, Push Buttons and LEDs.
            4. Flowchart showing application control flow.
            B31DG - Assignment 1
            B31DG - Assignment 1 7 1.0
            Appendix 1: Output Timing Diagram
            Figure 2.Output Timing Diagram (Full Page)
            B31DG - Assignment 1
            B31DG - Assignment 1 8 1.0
            Appendix 2: Hardware Configuration
            The assignment can be completed using either of the available ESP32-based development
            boards:
            1. ESP32 NodeMCU Module
            2. ESP32-C3-DevKitC-02
            A simplified circuit diagram is shown below. The circuit is to be built using the provided ESP32-
            based development board and discrete components, i.e. push buttons, LEDs, and resistors.
            The two pull-down resistors connected to the push buttons can be implemented using external
            resistors or resistors internal to the ESP32, if the GPIO pins on the ESP32 are appropriately
            configured.
            An appropriate resistance value for each of the four resistors should be determined and stated
            in the assignment deliverables.
            Note that the push buttons are connected to a 3.3V supply rail (rather than a 5V supply rail) as
            the operating voltage of the ESP32 is 3.3V.
            Figure 3. Simplified Circuit Diagram
            B31DG - Assignment 1
            B31DG - Assignment 1 9 1.0
            Appendix 3: PDF Report
            The deliverables for the assignment include a PDF report.
            The PDF document is required to meet the following standard:
            1. The PDF file should be named according to the following syntax:
            B31DG - Assignment 1 - <Student Number> - <Student Name>
            2. The first page of the document should a Contact Details section.
            o This should include your Name, Student Number and Email Address.
            3. The first page of the document should contain a Revision History table.
            o Even if an engineering document only has a single revision, it is good practice to
            have a Revision History table.
            o The Revision History table should include Date, Author Name, Version Number
            and Notes columns.
            ▪ The Notes entry for each document revision should include a brief
            description of the purpose of the revision and any changes from the
            previous version, e.g. "Initial draft", "Updated formatting", etc.
            4. The document should include a Table of Contents.
            o It is good practice for an engineering document to include a Table of Contents.
            o One can be auto-generated from Headings in Microsoft Word.
            ▪ Do not manually generate the Table of Contents. This is time-consuming
            and will inevitably become outdated.
            5. Each section should begin on a new page and include an identifying Heading.
            o Title Case should be used for all Headings.
            6. All figures should have a Caption, including a number.
            o Again, this is best practice and conveys professionalism.
            o Captions and numbers can be auto-generated in Microsoft Word.
            ▪ Do not manually generate the caption numbers. This is time-consuming
            and will inevitably become outdated.
            ▪ An example caption is Figure 2. Output Timing Diagram
            7. The Footer of each page should contain the Page Number.
            o The Date and/or Document Revision may also be included, if desired.
            o Do not manually generate these parameters. This is time-consuming and they
            will inevitably become outdated.
            ▪ Use Microsoft Word (or other editor of your choice) to auto-generate
            them.
            8. Spelling and grammar must be checked prior to submission.
            o Use the tools available within Microsoft Word (or other editor of your choice) to
            assist you with this.
            ▪ These tools are particularly helpful if you find this task to be difficult due
            to a language barrier, dyslexia, etc.
            o Failure to check for spelling and grammatical errors can be interpreted as a lack
            of attention to detail and respect for the reader.
            o UK English rather than US English must be utilised.

            請加QQ:99515681  郵箱:99515681@qq.com   WX:codehelp 

            標簽:

            掃一掃在手機打開當前頁
          1. 上一篇:代寫CSC8208、Java/c++編程語言代做
          2. 下一篇:代做EL2106&#160;&#160;、代寫Signals and Systems&#160;&#160; &#160;
          3. 無相關信息
            昆明生活資訊

            昆明圖文信息
            蝴蝶泉(4A)-大理旅游
            蝴蝶泉(4A)-大理旅游
            油炸竹蟲
            油炸竹蟲
            酸筍煮魚(雞)
            酸筍煮魚(雞)
            竹筒飯
            竹筒飯
            香茅草烤魚
            香茅草烤魚
            檸檬烤魚
            檸檬烤魚
            昆明西山國家級風景名勝區
            昆明西山國家級風景名勝區
            昆明旅游索道攻略
            昆明旅游索道攻略
          4. 高仿包包訂製 幣安官網下載

            關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

            Copyright © 2025 kmw.cc Inc. All Rights Reserved. 昆明網 版權所有
            ICP備06013414號-3 公安備 42010502001045

            主站蜘蛛池模板: 中文字幕在线一区二区三区| 看电影来5566一区.二区| 一区二区视频在线观看| 国产精品一区二区不卡| 一区 二区 三区 中文字幕| 中文字幕av一区| 91一区二区视频| 日韩精品一区二区三区四区 | 国产亚洲情侣一区二区无| 无码人妻久久一区二区三区免费丨| 波多野结衣AV无码久久一区| 成人免费视频一区二区| 无码毛片一区二区三区视频免费播放| 国产精品合集一区二区三区| 在线视频一区二区| 蜜臀AV在线播放一区二区三区| 久久久精品人妻一区二区三区| 精品一区二区三区中文字幕| 在线精品国产一区二区三区 | 久久久无码精品人妻一区| 人妻av无码一区二区三区| 91福利一区二区| 亚洲精品无码一区二区| 国产欧美一区二区精品仙草咪| 亚洲高清一区二区三区电影| 日本高清一区二区三区| 夜精品a一区二区三区| 日本一区二区三区四区视频| 国产精品亚洲一区二区无码| 国产一区二区在线视频播放| 一区二区视频在线免费观看| 国产一区二区高清在线播放| 亚洲线精品一区二区三区影音先锋| 亚洲永久无码3D动漫一区| 久久精品岛国av一区二区无码| 亚洲福利视频一区二区三区| 久久精品成人一区二区三区| 日本一区二区高清不卡| 久久久精品一区二区三区| 无码国产伦一区二区三区视频| 国产美女在线一区二区三区|