<?xml version="1.0" encoding="UTF-8"?>
<CourseUnit xmlns="http://www.manchester.ac.uk/CUICourseUnitDetails" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.manchester.ac.uk/CUICourseUnitDetails.xsd">
  <UnitCode Applicant="Y" Label="Unit code" Student="Y">
    <Code>COMP22712</Code>
  </UnitCode>
  <UnitTitle Applicant="Y" Label="Unit title" Student="Y">
    <Title>Microcontrollers</Title>
  </UnitTitle>
  <MaxUnits Applicant="Y" Label="Credit rating" Student="Y">
    <Units>10</Units>
  </MaxUnits>
  <TeachingPeriods Applicant="Y" Label="Teaching period(s)" Student="Y">
    <Period>Semester 2</Period>
  </TeachingPeriods>
  <AcademicCareer Applicant="Y" Label="Academic career" Student="Y">
    <Value>Undergraduate</Value>
  </AcademicCareer>
  <UnitLevel Applicant="Y" Label="Unit level" Student="Y">
    <Level>Level 2</Level>
  </UnitLevel>
  <StaffList Applicant="Y" Label="Teaching staff" RoleLabel="Course Unit Role" Student="Y">
    <StaffMember>
      <Name>James Garside</Name>
      <Role>Unit coordinator</Role>
    </StaffMember>
  </StaffList>
  <OfferedBy Applicant="Y" Label="Offered by" Student="Y">
    <OrganisationList>
      <Organisation>
        <OrgName></OrgName>
      </Organisation>
    </OrganisationList>
    <GroupList>
      <Group>
        <GroupName></GroupName>
      </Group>
    </GroupList>
    <FheqLevels>
      <FheqLevel>
        <LevelNumber>1</LevelNumber>
        <LevelName>FHEQ level (Framework for Higher Education Qualifications) ' Middle part of Bachelors ' </LevelName>
      </FheqLevel>
    </FheqLevels>
    <Ects>
      <MaxUnits>European Credit Transfer &amp; Accumulation System Rating :   5.0</MaxUnits>
    </Ects>
  </OfferedBy>
  <MarketingOverview Applicant="Y" Label="Marketing Course unit overview" Student="">
    <Content>&lt;p&gt;The module is a strong practical reinforcement of the software/hardware interface.  It provides experience in hardware/software codesign as well as dealing with interfacing techniques, from 'bit fiddling' to interrupt routines.  There is also an underpinning of operating systems and their implications in machine architecture.  The module uses custom designed hardware and software tools developed locally for this specific purpose.&lt;/p&gt;</Content>
  </MarketingOverview>
  <UnitOverview Applicant="" Label="Course unit overview" Student="Y">
    <Content>&lt;p&gt;The module is a strong practical reinforcement of the software/hardware interface. It provides experience in hardware/software codesign as well as dealing with interfacing techniques, from 'bit fiddling' to interrupt routines. There is also an underpinning of operating systems and their implications in machine architecture. The module uses custom designed hardware and software tools developed locally for this specific purpose. &amp;nbsp;This course unit detail provides the framework for delivery in 2025/6.&lt;/p&gt;</Content>
  </UnitOverview>
  <Aims Applicant="Y" Label="Aims" Student="Y">
    <Content>&lt;p&gt;This module aims to familiarise students with the use of microprocessors/microcontrollers for simple control and interfacing applications. The module aims to develop the understanding of the programming and operation of a microprocessor (the RISC-V introduced in COMP15111) to include modular program construction, separation of user and operating system tasks and interfacing techniques at the hardware and software levels. &amp;nbsp;This course builds upon the understanding of processor operation and assembler programming introduced in COMP15111 and upon the logic design in introduced in COMP12111 to show how hardware and software interact in solving interfacing problems. &amp;nbsp;There is some variation towards the end of the module to accommodate different backgrounds.&lt;/p&gt;</Content>
  </Aims>
  <LearningOutcomes Applicant="Y" Label="Learning outcomes" Student="Y">
    <Content>&lt;p&gt;&lt;wbr style="color: rgb(0, 0, 0); font-family: Times New Roman; font-size: 16px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px;" /&gt;&lt;/p&gt;&lt;ul id="docs-internal-guid-74f69a4e-7fff-d68c-a170-088549b700af"&gt;	&lt;li dir="ltr"&gt;		&lt;p dir="ltr"&gt;interface, from the software side input and output devices with an embedded controller&lt;/p&gt;&lt;/li&gt;	&lt;li dir="ltr"&gt;		&lt;p dir="ltr"&gt;customise simple digital I/O hardware&lt;/p&gt;&lt;/li&gt;	&lt;li dir="ltr"&gt;		&lt;p dir="ltr"&gt;properly understand the von Neumann memory architecture (I can&amp;#39;t think of a circumlocution which expresses this any better even if it does use a naughty word!)&lt;/p&gt;&lt;/li&gt;	&lt;li dir="ltr"&gt;		&lt;p dir="ltr"&gt;write reasonably sizeable assembly language routines with all the familiarity with processor architecture that entails&lt;/p&gt;&lt;/li&gt;	&lt;li dir="ltr"&gt;		&lt;p dir="ltr"&gt;write I/O software for parallel interfaces, including time-division multiplexing and timers&lt;/p&gt;&lt;/li&gt;	&lt;li dir="ltr"&gt;		&lt;p dir="ltr"&gt;write interrupt-driven code&lt;/p&gt;&lt;/li&gt;	&lt;li dir="ltr"&gt;		&lt;p dir="ltr"&gt;structure, lay-out and document code to a maintainable standard&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;</Content>
  </LearningOutcomes>
  <Knowledge Applicant="Y" Label="Knowledge and understanding" Student="Y">
    <Content></Content>
  </Knowledge>
  <IntellectualSkills Applicant="Y" Label="Intellectual skills" Student="Y">
    <Content></Content>
  </IntellectualSkills>
  <PracticalSkills Applicant="Y" Label="Practical skills" Student="Y">
    <Content></Content>
  </PracticalSkills>
  <TransferableSkills Applicant="Y" Label="Transferable skills and personal qualities" Student="Y">
    <Content></Content>
  </TransferableSkills>
  <EmployabilitySkillsList Applicant="Y" Label="Employability skills" Student="Y">
    <Skill>
      <SkillId>Analytical skills</SkillId>
      <SkillDescription></SkillDescription>
    </Skill>
    <Skill>
      <SkillId>Innovation/creativity</SkillId>
      <SkillDescription></SkillDescription>
    </Skill>
    <Skill>
      <SkillId>Problem solving</SkillId>
      <SkillDescription></SkillDescription>
    </Skill>
    <Skill>
      <SkillId>Other</SkillId>
      <SkillDescription></SkillDescription>
    </Skill>
  </EmployabilitySkillsList>
  <Syllabus Applicant="Y" Label="Syllabus" Student="Y">
    <Content>&lt;ul&gt;&lt;li&gt;Basic Interfacing [1]&lt;/li&gt;&lt;li&gt;Parallel I/O [2]&lt;/li&gt;&lt;li&gt;Procedure calls, Nesting &amp; Stacking [2]&lt;/li&gt;&lt;li&gt;System calls, Privilege levels, Initialisation [2]&lt;/li&gt;&lt;li&gt;Timers [3]&lt;/li&gt;&lt;li&gt;Interrupts [2]&lt;/li&gt;&lt;li&gt;Real-time operation, User interaction [2]&lt;/li&gt;&lt;li&gt;Introduction to Verilog [3]/System design [3]&lt;/li&gt;&lt;li&gt;System design [3]/Project [3]&lt;/li&gt;&lt;/ul&gt;</Content>
  </Syllabus>
  <TeachingMethods Applicant="Y" Label="Teaching and learning methods" Student="Y">
    <Content>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:14px;"&gt;Lectures&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;No formal lectures&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:14px;"&gt;Laboratories&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;44 hours in total, 22 2-hour sessions&lt;/p&gt;</Content>
  </TeachingMethods>
  <AssessmentMethods Applicant="Y" Label="Assessment methods" Student="Y">
    <IntroText> </IntroText>
    <Method>
      <MethodId>8</MethodId>
      <MethodName>Practical skills assessment</MethodName>
      <MethodWeight>100%</MethodWeight>
    </Method>
  </AssessmentMethods>
  <FeedbackMethods Applicant="Y" Label="Feedback methods" Student="Y">
    <Content>Direct verbal feedback and advice in scheduled laboratory sessions.&lt;br /&gt;&lt;br /&gt;'Automatic' feedback from tools seeing exercises work/fail.&lt;br /&gt;&lt;br /&gt;Written feedback by annotating listings from submitted exercises.</Content>
  </FeedbackMethods>
  <RequirementsList Applicant="Y" Label="Pre/co-requisites" Student="Y">
    <Requirement>
      <UnitCode>COMP15111</UnitCode>
      <UnitTitle>Fundamentals of Computer Architecture</UnitTitle>
      <RequirementType>Pre-Requisite</RequirementType>
      <Description>Compulsory</Description>
    </Requirement>
    <AdditionalRequirement>Students who are not from the School of Computer Science must have permission from both Computer Science and their home School to enrol.</AdditionalRequirement>
  </RequirementsList>
  <AcademicPrograms Applicant="Y" Label="Academic programmes" Student="Y">
    <AcademicProgram>
      <Program></Program>
      <Plan></Plan>
      <Level></Level>
      <Requirement></Requirement>
    </AcademicProgram>
  </AcademicPrograms>
  <FreeChoice Applicant="Y" Label="Available as a free choice unit?" Student="Y">
    <Content>Y</Content>
  </FreeChoice>
  <Accreditation Applicant="Y" Label="Accreditation" Student="Y">
    <Content></Content>
  </Accreditation>
  <RecommendedReading Applicant="Y" Label="Recommended reading" Student="Y">
    <Content>&lt;p&gt;&lt;a href="http://studentnet.cs.manchester.ac.uk/syllabus/index.php?code=COMP22712&amp;amp;year=2020" target="_blank"&gt;COMP22712 reading list&lt;/a&gt; can be found on the Department of Computer Science website for current students.&lt;/p&gt;</Content>
  </RecommendedReading>
  <StudyHours Applicant="Y" Label="Study hours" Student="Y">
    <IntroText> </IntroText>
    <ScheduledHours Applicant="Y" Label="Scheduled activity hours" Student="Y">
      <ActivityHours>
        <ActivityType>Practical classes &amp; workshops</ActivityType>
        <Hours>24</Hours>
      </ActivityHours>
    </ScheduledHours>
    <PlacementHours Applicant="Y" Label="Placement hours" Student="Y">
      <ActivityHours>
        <ActivityType></ActivityType>
        <Hours>0</Hours>
      </ActivityHours>
    </PlacementHours>
    <TotalHours Applicant="Y" Label="Independent study hours" Student="Y">
      <Hours>76</Hours>
    </TotalHours>
  </StudyHours>
  <Notes Applicant="Y" Label="Additional notes" Student="Y">
    <Content>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:14px;"&gt;Course unit materials&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;a target="_blank" href="http://studentnet.cs.manchester.ac.uk/ugt/syllabus.php"&gt;Links to course unit teaching materials&lt;/a&gt; can be found on the School of Computer Science website for current students.&lt;/p&gt;</Content>
  </Notes>
</CourseUnit>
