100% found this document useful (4 votes)
14 views55 pages

Full Download Anywhere anytime signals and systems laboratory from MATLAB to smartphones Second Edition Adrian Duran PDF DOCX

Duran

Uploaded by

ponziarnon8k
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (4 votes)
14 views55 pages

Full Download Anywhere anytime signals and systems laboratory from MATLAB to smartphones Second Edition Adrian Duran PDF DOCX

Duran

Uploaded by

ponziarnon8k
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 55

Download the Full Version of textbook for Fast Typing at textbookfull.

com

Anywhere anytime signals and systems laboratory


from MATLAB to smartphones Second Edition Adrian
Duran

https://textbookfull.com/product/anywhere-anytime-signals-
and-systems-laboratory-from-matlab-to-smartphones-second-
edition-adrian-duran/

OR CLICK BUTTON

DOWNLOAD NOW

Download More textbook Instantly Today - Get Yours Now at textbookfull.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

Continuous signals and systems with MATLAB 3rd Edition


Taan S. Elali

https://textbookfull.com/product/continuous-signals-and-systems-with-
matlab-3rd-edition-taan-s-elali/

textboxfull.com

Signals and systems : analysis using transform methods and


MATLAB Third Edition Michael J. Roberts

https://textbookfull.com/product/signals-and-systems-analysis-using-
transform-methods-and-matlab-third-edition-michael-j-roberts/

textboxfull.com

Linear Systems and Signals B. P. Lathi

https://textbookfull.com/product/linear-systems-and-signals-b-p-lathi/

textboxfull.com

Circuits Signals and Systems for Bioengineers 3rd Edition


John Semmlow

https://textbookfull.com/product/circuits-signals-and-systems-for-
bioengineers-3rd-edition-john-semmlow/

textboxfull.com
Graphene technology from laboratory to fabrication 1st
Edition Nazarpour

https://textbookfull.com/product/graphene-technology-from-laboratory-
to-fabrication-1st-edition-nazarpour/

textboxfull.com

Multisensory Perception From Laboratory to Clinic Krish


Sathian

https://textbookfull.com/product/multisensory-perception-from-
laboratory-to-clinic-krish-sathian/

textboxfull.com

Polymyxin Antibiotics From Laboratory Bench to Bedside


Jian Li

https://textbookfull.com/product/polymyxin-antibiotics-from-
laboratory-bench-to-bedside-jian-li/

textboxfull.com

Organic and Carbon Gels From Laboratory Synthesis to


Applications Ana Arenillas

https://textbookfull.com/product/organic-and-carbon-gels-from-
laboratory-synthesis-to-applications-ana-arenillas/

textboxfull.com

Seniors Edition Smartphones Tablets Editors

https://textbookfull.com/product/seniors-edition-smartphones-tablets-
editors/

textboxfull.com
Anywhere-Anytime
Signals and Systems Laboratory
From MATLAB to Smartphones
Second Edition
Synthesis Lectures on Signal
Processing
Editor
José Moura, Carnegie Mellon University
Synthesis Lectures in Signal Processing publishes 80- to 150-page books on topics of interest to
signal processing engineers and researchers. The Lectures exploit in detail a focused topic. They can
be at different levels of exposition-from a basic introductory tutorial to an advanced
monograph-depending on the subject and the goals of the author. Over time, the Lectures will
provide a comprehensive treatment of signal processing. Because of its format, the Lectures will
also provide current coverage of signal processing, and existing Lectures will be updated by authors
when justified.
Lectures in Signal Processing are open to all relevant areas in signal processing. They will cover
theory and theoretical methods, algorithms, performance analysis, and applications. Some Lectures
will provide a new look at a well established area or problem, while others will venture into a brand
new topic in signal processing. By careful reviewing the manuscripts we will strive for quality both
in the Lectures’ contents and exposition.

Anywhere-Anytime Signals and Systems Laboratory: From MATLAB to Smartphones,


Second Edition
Nasser Kehtarnavaz, Fatemeh Saki, and Adrian Duran
2019

Anywhere-Anytime Signals and Systems Laboratory: from MATLAB to Smartphones


Nasser Kehtarnavaz and Fatemeh Saki
2017

Smartphone-Based Real-Time Digital Signal Processing


Nasser Kehtarnavaz, Shane Parris, and Abhishek Sehgal
2015

An Introduction to Kalman Filtering with MATLAB Examples


Narayan Kovvali, Mahesh Banavar, and Andreas Spanias
2013

Sequential Monte Carlo Methods for Nonlinear Discrete-Time Filtering


Marcelo G.S. Bruno
2013
iii
Processing of Seismic Reflection Data Using MATLAB™
Wail A. Mousa and Abdullatif A. Al-Shuhail
2011

Fixed-Point Signal Processing


Wayne T. Padgett and David V. Anderson
2009

Advanced Radar Detection Schemes Under Mismatched Signal Models


Francesco Bandiera, Danilo Orlando, and Giuseppe Ricci
2009

DSP for MATLAB™ and LabVIEW™ IV: LMS Adaptive Filtering


Forester W. Isen
2009

DSP for MATLAB™ and LabVIEW™ III: Digital Filter Design


Forester W. Isen
2008

DSP for MATLAB™ and LabVIEW™ II: Discrete Frequency Transforms


Forester W. Isen
2008

DSP for MATLAB™ and LabVIEW™ I: Fundamentals of Discrete Signal Processing


Forester W. Isen
2008

The Theory of Linear Prediction


P. P. Vaidyanathan
2007

Nonlinear Source Separation


Luis B. Almeida
2006

Spectral Analysis of Signals: The Missing Data Case


Yanwei Wang, Jian Li, and Petre Stoica
2006
Copyright © 2019 by Morgan & Claypool

All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in
any form or by any means—electronic, mechanical, photocopy, recording, or any other except for brief quotations
in printed reviews, without the prior permission of the publisher.

Anywhere-Anytime Signals and Systems Laboratory: From MATLAB to Smartphones, Second Edition
Nasser Kehtarnavaz, Fatemeh Saki, and Adrian Duran
www.morganclaypool.com

ISBN: 9781681734491 paperback


ISBN: 9781681734507 ebook
ISBN: 9781681734514 hardcover

DOI 10.2200/S00879ED2V01Y201810SPR015

A Publication in the Morgan & Claypool Publishers series


SYNTHESIS LECTURES ON SIGNAL PROCESSING

Lecture #15
Series Editor: José Moura, Carnegie Mellon University
Series ISSN
Print 1932-1236 Electronic 1932-1694
Anywhere-Anytime
Signals and Systems Laboratory
From MATLAB to Smartphones
Second Edition

Nasser Kehtarnavaz, Fatemeh Saki, and Adrian Duran


University of Texas at Dallas

SYNTHESIS LECTURES ON SIGNAL PROCESSING #15

M
&C Morgan & cLaypool publishers
ABSTRACT
A typical undergraduate electrical engineering curriculum incorporates a signals and systems
course. The widely used approach for the laboratory component of such courses involves the
utilization of MATLAB to implement signals and systems concepts. This book presents a newly
developed laboratory paradigm where MATLAB codes are made to run on smartphones, which
most students already possess. This smartphone-based approach enables an anywhere-anytime
platform for students to conduct signals and systems experiments. This book covers the labora-
tory experiments that are normally covered in signals and systems courses and discusses how to
run MATLAB codes for these experiments on both Android and iOS smartphones, thus en-
abling a truly mobile laboratory environment for students to learn the implementation aspects
of signals and systems concepts.
A zipped file of the codes discussed in the book can be acquired via the website http://si
tes.fastspring.com/bookcodes/product/SignalsSystemsBookcodesSecondEdition.

KEYWORDS
smartphone-based signals and systems laboratory; anywhere-anytime platform for
signals and system courses; from MATLAB to smartphones
vii

Contents
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi

1 Introduction to MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Starting MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Arithmetic Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.2 Vector Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.3 Complex Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.4 Array Indexing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.5 Allocating Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1.6 Special Characters and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.1.7 Control Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.8 Programming in MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.9 Sound Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.1.10 Loading and Saving Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.1.11 Reading Wave and Image Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.1.12 Signal Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.2 MATLAB Programming Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.2.1 Signal Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.2.2 Generating a Periodic Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3 Lab Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2 Software Development Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21


2.1 Android Tools Installation Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1.1 Java JDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1.2 Android Studio Bundle and Native Development Kit . . . . . . . . . . . . . . 22
2.1.3 Android Studio Setup Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.4 Android Emulator Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.1.5 Getting Familiar with Android Software Tools . . . . . . . . . . . . . . . . . . . 31
2.2 iOS Tools Installation Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.2.1 Iphone App Development with Xcode . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.2.2 Setting-Up App Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2.3 Creating Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
viii
2.2.4 Implementing C Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.2.5 Executing C Codes Via Objective-C . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.2.6 iOS App Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

3 From MATLAB Coder to Smartphone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49


3.1 MATLAB Function Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.2 Generating Signals via MATLAB on Smartphones . . . . . . . . . . . . . . . . . . . . . 51
3.2.1 Test Bench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.2.2 C Code Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.2.3 Source Code Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.3 Running MATLAB Coder-Generated C Codes on Smartphones . . . . . . . . . 57
3.3.1 Running on Android Smartphones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.3.2 Running on iOS Smartphones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.4 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

4 Linear Time-Invariant Systems and Convolution . . . . . . . . . . . . . . . . . . . . . . . 65


4.1 Convolution and Its Numerical Approximation . . . . . . . . . . . . . . . . . . . . . . . . 65
4.2 Convolution Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.3 Convolution Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.4 Lab Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
4.4.1 Echo Cancellation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
4.4.2 Noise Reduction Using Mean Filtering . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.4.3 Impulse Noise Reduction Using Median Filtering . . . . . . . . . . . . . . . . 96
4.5 Running MATLAB Coder-Generated C Codes on Smartphones . . . . . . . . . 96
4.5.1 Running on Android Smartphones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.5.2 Running on iOS Smartphones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.6 Real-Time Running on Smartphones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4.6.1 MATLAB Function Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4.6.2 Test Bench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.6.3 Modifying Real-Time Shell for Android . . . . . . . . . . . . . . . . . . . . . . . 103
4.6.4 Modifying Real-Time Shell for iOS . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.7 Real-Time Labs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.7.1 Android Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.7.2 iOS Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
4.7.3 Android Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
4.7.4 iOS Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
4.8 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
ix
5 Fourier Series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
5.1 Fourier Series Numerical Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
5.2 Fourier Series and Its Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
5.3 Lab Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
5.3.1 RL Circuit Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
5.3.2 Doppler Effect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5.3.3 Synthesis of Electronic Music . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5.4 Real-Time Labs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
5.4.1 Android Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
5.4.2 iOS Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
5.4.3 Android Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
5.4.4 iOS Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
5.5 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

6 Continuous-Time Fourier Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169


6.1 CTFT and Its Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
6.2 Numerical Approximations of CTFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
6.3 Evaluating Properties of CTFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
6.4 Lab Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
6.4.1 Circuit Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
6.4.2 The Doppler Effect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
6.4.3 Diffraction of Light . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
6.5 Real-Time Labs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
6.5.1 Android Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
6.5.2 iOS Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
6.5.3 Android Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
6.5.4 iOS Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
6.6 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224

7 Digital Signals and Their Transforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227


7.1 Digital Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
7.1.1 Sampling and Aliasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
7.1.2 Quantization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
7.1.3 A/D and D/A Conversions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
7.1.4 DTFT and DFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
7.2 Analog-to-Digital Conversion, DTFT, and DFT . . . . . . . . . . . . . . . . . . . . . 237
x
7.3 Lab Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
7.3.1 Dithering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
7.3.2 Image Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
7.3.3 DTMF Decoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
7.4 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256

Authors’ Biographies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
xi

Preface
A typical undergraduate electrical engineering curriculum incorporates a signals and systems
course where students normally first encounter signal processing concepts of convolution,
Fourier series, Fourier transform, and discrete Fourier transform. For the laboratory component
of such courses, the conventional approach has involved a laboratory environment consisting of
computers running MATLAB codes. There exist a number of lab textbooks or manuals for the
laboratory component of signals and systems courses based on MATLAB, e.g., An Interactive
Approach to Signals and Systems Laboratory by Kehtarnavaz, Loizou, and Rahman; Signals and
Systems Laboratory with MATLAB by Palamides and Veloni; Signals and Systems: A Primer with
MATLAB by Sadiku and Ali; and Signals and Systems by Mitra.
The motivation for writing this lab textbook or manual has been to provide an alternative
laboratory approach to the above conventional laboratory approach by using smartphones as a
truly mobile anywhere-anytime platform for students to run signals and systems codes written
in MATLAB on smartphones. This approach eases the requirement of using a dedicated lab-
oratory room for signals and systems courses and allows students to use their own laptop and
smartphones as the laboratory platform to learn the implementation aspects of signals and sys-
tems concepts. It is worth stating that this book is only meant as an accompanying lab book to
signals and systems textbooks and is not meant to be used as a substitute for these textbooks.
The challenge in developing this alternative approach has been to limit the programming
language required from students to MATLAB and not requiring them to know any other pro-
gramming language. MATLAB is extensively used in engineering departments and students are
often expected to use it for various courses they take during their undergraduate studies.
The above challenge is met here by using the smartphone software tools that are publicly
available. The software development environments of smartphones (both Android and iOS) are
free of charge and students can download and place them on their own laptops to be able to
run signals and systems algorithms written in MATLAB on their own smartphones. In this
lecture series book, we have developed the software shells that allow students to take MATLAB
codes written on a laptop and run them on their own smartphones as apps. In the first edition
of the book, the implementation was done on Android smartphones. In this second edition, in
addition to Android smartphones, the implementation is done on iOS smartphones.
The book chapters correspond to the following labs for a semester-long lab course consid-
ering that a typical signals and systems laboratory component includes labs 4–7: (1) introduc-
tion to MATLAB programming; (2) smartphone development tools (both Andorid and iOS);
(3) use of MATLAB Coder to generate C codes from MATLAB and how to run C codes
xii PREFACE
on smartphones as apps; (4) linear time-invariant systems and convolution; (5) Fourier series;
(6) continuous-time Fourier transform; and (7) digital signals and discrete Fourier transform.
Note that a zipped file of all the codes discussed in the book can be acquired from
the website http://sites.fastspring.com/bookcodes/product/SignalsSystemsBookc
odesSecondEdition.
As a final note, we wish to acknowledge Erik Jonsson School of Engineering and Com-
puter Science at the University of Texas at Dallas for the support we received while writing this
second edition.

Nasser Kehtarnavaz, Fatemeh Saki, and Adrian Duran


Fall 2018
1

CHAPTER 1

Introduction to MATLAB
MATLAB is a programming environment that is widely used to solve engineering problems.
There are many online references on MATLAB that one can read to become familiar with this
programming environment. This chapter is only meant to provide an overview or a brief intro-
duction to MATLAB. Screenshots are used to show the steps to be taken and configuration
options to set when using the Windows operating system.

1.1 STARTING MATLAB


Assuming MATLAB is installed on the laptop or computer used, select MATLAB from the
Start bar of Windows, as illustrated in Figure 1.1. After starting MATLAB, a window called
MATLAB desktop appears, see Figure 1.2, which contains other subwindows or panels. The
panel Command Window allows interactive computation to be conducted. Suppose it is desired
to compute 3 C 4  6. This is done by typing it at the prompt command denoted by >> ; see
Figure 1.3. Since no output variable is specified for the result of 3 C 4  6, MATLAB returns the
value in the variable ans , which is created by MATLAB. Note that ans is always overwritten
by MATLAB, so, if the result is used for another operation, it needs to be assigned to a variable,
for example x D 3 C 4  6.
In practice, a sequence of operations is usually performed to achieve a desired output.
Often, a so-called m-file script is used for this purpose. An m-file script is a simple text file where
MATLAB commands are listed. Figure 1.4 shows how to start a new script. In the HOME
menu, locate the New Script tab under New ! Script, or Ctrl+N to create a blank script under the
panel EDITOR. When a new script is opened, it looks as shown in Figure 1.5. A script can be
saved using a specified name in a desired location. An m-file script is saved with “.m” extension.
When such a file is run, MATLAB reads the commands and executes them as though there
were the MATLAB commands and operations. The following section provides more details on
the MATLAB commands and operations.

1.1.1 ARITHMETIC OPERATIONS


There are four basic arithmetic operators in m-files:

+ addition
- subtraction
2 1. INTRODUCTION TO MATLAB

Figure 1.1: MATLAB appearance in the Windows Start bar.


1.1. STARTING MATLAB 3

Current Directory: You can change it to any desired one

Workspace:
View variables that
are created and
stored during a
MATLAB session

Command Window: Write MATLAB


functions at prompt command line (>>)

Command History:
View or run
previously executed
functions

Current Folder: View the


files in the current directory

Figure 1.2: MATLAB interface window.

Figure 1.3: A simple computation in the Command Window.


4 1. INTRODUCTION TO MATLAB

Figure 1.4: Starting a new m-file script in MATLAB.

Figure 1.5: An m-file script docked in the EDITOR panel.


1.1. STARTING MATLAB 5

* multiplication
/ division (for matrices, it also means inversion)

The following three operators work on an element-by-element basis:

.* multiplication of two vectors, element-wise


./ division of two vectors, element-wise
.^ raising all the elements of a vector to a power
p
As an example, to evaluate the expression a3 C bd 4c , where a D 1:2, b D 2:3, c D
4:5, and d D 4, type the following commands in the Command Window to get the answer
( ans ):

>> a=1.2;
>> b=2.3;
>> c=4.5;
>> d=4;
>> a^3+sqrt(b*d)-4*c
ans =
-13.2388

Note the semicolon after each variable assignment. If the semicolon is omitted, the interpreter
echoes back the variable value.

1.1.2 VECTOR OPERATIONS


Consider the vectors x D Œx1 ; x2 ; :::; xn  and y D Œy1 ; y2 ; :::; yn . The following operations in-
dicate the resulting vectors:

x:  y D Œx1 y1 ; x2 y2 ; :::; xn yn 
 
x1 x2 xn
x:=y D ; ; :::;
y1 y2 yn
x: ^ p D Œx1 p ; x2 p ; :::; xn p  :

Considering that the boldfacing of vectors/matrices are not used in .m files, in the notation
adopted in this book, no boldfacing of vectors/matrices is shown to retain notation consistency
with .m files.
The arithmetic operators C and can be used to add or subtract matrices, vectors, or
scalars. Vectors denote 1-dimensional arrays and matrices denote multi-dimensional arrays. For
example:
6 1. INTRODUCTION TO MATLAB

>> x=[1,3,4]
>> y=[4,5,6]
>> x+y
ans=
5 8 10

In this example, the operator C adds the elements of the vectors x and y, element by
element, assuming that the two vectors have the same dimension, in this case, or 1  3 one row
with three columns. An error occurs if one attempts to add vectors having different dimensions.
The same applies for matrices.
P
To compute the dot product of two vectors (in other words, xi yi ), use the multiplication
i
operator '*' as follows:
>> x*y'
ans =
43

Note the single quote after y denotes the transpose of a vector or a matrix.
An element-by-element multiplication of two vectors (or two arrays) is computed by the
following operator:
>> x .* y
ans =
4 15 24

That is, x .* y means Œ1  4; 3  5; 4  6 D Œ4 15 24.

1.1.3 COMPLEX NUMBERS


MATLAB supports complex numbers. The imaginary number is denoted with the symbol i or
j, assuming that these symbols have not been used any other place in the program. It is critical
to avoid such symbol conflicts for obtaining correct outcome. Enter the following and observe
the outcomes:
>> z=3 + 4i % note the multiplication sign '*' is not needed after 4
>> conj(z) % computes the conjugate of z
>> angle(z) % computes the phase of z
>> real(z) % computes the real part of z
>> imag(z) % computes the imaginary part of z
>> abs(z) % computes the magnitude of z
1.1. STARTING MATLAB 7
One can also define an imaginary number with any other user-specified variables. For
example, in the following manner:
>> img=sqrt(-1)
>> z=3 + 4*img
>> exp(pi*img)

1.1.4 ARRAY INDEXING


In m-files, all arrays (vectors) are indexed starting from 1; in other words, x(1) denotes the first
element of the array x. Note that arrays are indexed using parentheses (.) and not square
brackets [.] , as done in C/C++. To create an array featuring the integers 1–6 as elements,
enter:
>> x=[1,2,3,4,5,6]

Alternatively, the notation ':' can be used as follows:


>> x=1:6

This notation creates a vector starting from 1–6, in steps of 1. If a vector from 1–6 in steps of 2
is desired, then type:
>> x=1:2:6
ans =
1 3 5

Additional examples are listed below:


>> ii=2:4:17
>> jj=20:-2:0
>> ii=2:(1/10):4

One can easily extract numbers in a vector. To concatenate an array, the example below
shows how to use the operator '[ ]' :
>> x=[1:3 4 6 100:110]

To access a subset of this array, type the following:


>> x(3:7)
>> length(x) % gives the size of the array or vector
>> x(2:2:length(x))
8 1. INTRODUCTION TO MATLAB
1.1.5 ALLOCATING MEMORY
Memory can get allocated for 1-dimensional arrays (vectors) using the command or function
zeros . The following command allocates memory for a 100-dimensional array:

>> y=zeros(100,1);
>> y(30)
ans =
0

The function zeros(n,m) creates an nm matrix with all 0 elements. One can allocate memory
for 2-dimensional arrays (matrices) in a similar fashion. The command or function
>> y=zeros(4,5)

defines a 4 by 5 matrix.
Similar to the command zeros , the command ones can be used to define a vector
containing all ones. For example,
>> y=ones(1,5)
ans=
1 1 1 1 1

1.1.6 SPECIAL CHARACTERS AND FUNCTIONS


Some widely used special characters used in m-files are listed in Table 1.1. Some widely used
functions are listed in Table 1.2.
Here is an example of the function length ,

>> x=1:10;
>> length(x)
ans =
10

The function find returns the indices of a vector that are non-zero. For example,
I = find(x>4) finds all the indices of x greater than 4. Thus, for the above example:

>> find(x>4)
ans =
5 6 7 8 9 10
1.1. STARTING MATLAB 9
Table 1.1: Some widely used special characters used in m-files

Symbol Meaning
pi π (3.14.....)
^ indicates power (for example, 3^2 = 9)
NaN not-a-number, obtained when encountering undefined operations, such as 0/0
Inf represents +∞
; indicates the end of a row in a matrix; also used to suppress printing on the screen
(echo off )
% comments—anything to the right of % is ignored by the .m file interpreter and is
considered to be comments
' denotes transpose of a vector or a matrix; also used to define strings, for example,
str1 = 'DSP'
… denotes continuation; three or more periods at the end of a line continue current
function to next line

Table 1.2: Some widely used functions

Function Meaning
sqrt indicates square root, for example, sqrt(4) = 2
abs absolute value |.|, for example, abs(-3) = 3
length length(x) gives the dimension of the array x
sum finds sum of the elements of a vector
find finds indices of nonzero

1.1.7 CONTROL FLOW


m-files have the following control flow constructs:

• if statements

• switch statements

• for loops

• while loops

• break statements
10 1. INTRODUCTION TO MATLAB
The constructs if , for , switch , and while need to terminate with an end state-
ment. Examples are provided below:
if
>> x=-3;
if x>0
str='positive'
elseif x<0
str='negative'
elseif x== 0
str='zero'
else
str='error'
end

See the value of 'str' after running the above code.


while
x=-10;
while x<0
x=x+1;
end

See the value of x after running the above code.


for loop
>>x=0;
for j=1:10
x=x+j;
end

The above code computes the sum of all the numbers from 1–10.
break
With the break statement, one can exit early from a for or a while loop. For example,
>> x=-10;
while x<0
x=x+2;
if x == -2
break;
1.1. STARTING MATLAB 11

end
end

Some of the supported relational and logical operators are listed in Tables 1.3 and 1.4.

Table 1.3: Relational operators

Symbol Meaning
<= less than equal
< less than
>= greater than equal
> greater than
== equal
~= not equal

Table 1.4: Logical operators

Symbol Meaning
& AND
| OR
~ NOT

1.1.8 PROGRAMMING IN MATLAB


Open a new script file as displayed in Figures 1.3 and 1.4. Save it first in a desired directory. Then
write your MATLAB code and press Run button from the EDITOR panel. For instance, to
write a program to compute the average (mean) of a vector x, the program should use the vector x
as its input and return the average value. To write this program, follow the steps outlined below.
Type the following in an empty window:
x=1:10
L=length(x);
sum=0;
for j=1:L
sum=sum+x(j);
end
y=sum/L % the average of x
12 1. INTRODUCTION TO MATLAB
From the EDITOR panel, go to save ! Save As and enter average.m for the filename.
Then click on the Run button to run the program. Figure 1.6 shows the MATLAB interactive
window after running the program.

Figure 1.6: m-file script interactive window after running the program average.

1.1.9 SOUND GENERATION


Assuming the computer used has a sound card, one can use the function sound to play back
speech or audio files through its speakers. That is, the function sound(y,FS) sends the signal in
a vector y (with sample frequency FS) out to the speaker. Stereo sounds are played on platforms
that support them, with y being an N-by-2 matrix.
Type the following code and listen to a 400 Hz tone:
1.1. STARTING MATLAB 13

>> t=0:1/8000:1;
>> x=cos(2*pi*400*t);
>> sound(x,8000);

Now generate a noise signal by typing:


>> noise=randn(1,8000); % generate 8000 samples of noise
>> sound(noise,8000);

The function randn generates Gaussian noise with zero mean and unit variance.

1.1.10 LOADING AND SAVING DATA


One can load or store data using the commands load and save . To save the vector x of the
above code in the file data.mat, type:
>> save('data.mat', 'x')

To retrieve the data previously saved, type:


>> load data

The vector x gets loaded in memory. To see memory contents, use the command whos :
>> whos
Variable Dimension Type
x 1x8000 double array

The command whos gives a list of all the variables currently in memory, along with their
dimensions and data type. In the above example, x contains 8,000 samples.
To clear up memory after loading a file, type clear all when done. This is important
because, if one does not clear all the variables, conflicts can occur with other codes using the
same variables.

1.1.11 READING WAVE AND IMAGE FILES


With MATLAB, one can read data from different file types (such as .wav, .jpeg, and .bmp) and
load them in a vector.
To read an audio data file with .wav extension, use the following command:
>> [y,Fs]=audioread('filename')

This command reads a .wav file specified by the string filename and returns the sampled data
in y with the sampling rate of Fs (in Hertz).
14 1. INTRODUCTION TO MATLAB
To read an image file, use the following command:

>> [y]=imread('filename')

This command reads a grayscale or color image from the string filename and returns the
image data in the array y.

1.1.12 SIGNAL DISPLAY


Graphical tools are available in MATLAB to display data in a graphical form. Throughout the
book, signals in both the time and frequency domains are displayed using the function plot,

>> plot(x,y)

This function creates a 2-D line plot of the data in y vs. corresponding x values.

1.2 MATLAB PROGRAMMING EXAMPLES


In this section, several simple MATLAB programs are presented.

1.2.1 SIGNAL GENERATION


In this example, we see how to generate and display continuous-time signals in the time domain.
One can represent such signals as a function of time. For simulation purposes, a representation
of time t is needed. Note that the time scale is continuous while computers handle operations
in a discrete manner. Continuous time simulation is achieved by considering a very small time
interval. For example, if a 1-s duration signal in millisecond (ms) increments (time interval of
0.001 s) is considered, then one sample every 1 ms or a total of 1,000 samples are generated
for the entire signal leading to a continuous signal simulation. This continuous-time signal ap-
proximation or simulation is used in later chapters. It is important to note that a finite number
of samples is involved in the simulation of a continuous-time signal, and thus to differentiate
a continuous-time signal from a discrete-time signal, a much higher number of samples per
second for a continuous-time signal needs to be used (very small time interval).
Figure 1.7 shows two continuous-time signals x1.t/ and x2.t / with a duration of
3 s. By setting the time interval dt to 0.001 s, there is a total of 3,000 samples at t D
0; 0:001; 0:002; 0:003; : : : ; 2:999 s. Note that throughout the book, the notations dt , delta, and 
are used interchangeably to denote the time interval between samples.
The signal x1.t/ can be represented mathematically as follows:
8
< 0 0t <1
x1.t/ D 1 1t <2 : (1.1)
:
0 2t <3
1.2. MATLAB PROGRAMMING EXAMPLES 15
x1(t) x2(t)

2 2

0 1 2 3 t 0 1 2 3 t

Figure 1.7: Continous-time signals.

To simulate this signal, use the MATLAB functions ones and zeros . The signal value is zero
during the first second, which means the first 1,000 samples are zero. This portion of the signal
is simulated with the function zeros(1,1000) . In the next second (next 1,000 samples), the
signal value is 2, and this portion is simulated by the function 2*ones(1,1000) . Finally, the
third portion of the signal is simulated by the function zeros(1,1000) . In other words, the
entire duration of the signal is simulated by the following .m file function:

x1=[ zeros(1,1/dt) 2*ones(1,1/dt) zeros(1,1/dt)]

The signal x2.t / can be represented mathematically as follows:


8
< 2t 0t <1
x2.t / D 2t C 4 1  t < 2 : (1.2)
:
0 2t <3

A linearly increasing or decreasing vector can thus be used to represent the linear portions.
The time vectors for the three portions or segments of the signal are 0:dt:1-dt , 1:dt:2-dt ,
and 2:dt:3-dt . The first segment is a linear function corresponding to a time vector with a
slope of 2; the second segment is a linear function corresponding to a time vector with a slope
of 2 and an offset of 4; and the third segment is simply a constant vector of zeros. In other
words, the entire duration of the signal for any value of dt can be simulated by the following .m
file function:
x2=[2*(0:dt:(1-dt)) -2*(1:dt:(2-dt))+4 zeros(1,1/dt)]

Figures 1.8 and 1.9 show the MATLAB code and the plot of the above signal gener-
ation, respectively. Signals can be displayed using the function plot(t,data) . For proper
plotting, first the correct t vector needs to be generated. Here this is done by using the function
linspace :

>> t=linspace(0,E,N)
16 1. INTRODUCTION TO MATLAB

Figure 1.8: MATLAB code of a signal generation example.

Figure 1.9: Signal plots.

This function generates a vector t of N points linearly spaced between and including 0 and
E , where N is equal to E/dt .
1.2. MATLAB PROGRAMMING EXAMPLES 17
1.2.2 GENERATING A PERIODIC SIGNAL
In this example, a simple periodic signal is generated. This example involves generating a periodic
signal in textual mode and displaying it graphically. The shape of the signal ( sin , square ,
triangle , or sawtooth ) can be modified, as well as its frequency and amplitude, by using
appropriate control parameters. The MATLAB code and the plots generated by it are shown in
Figures 1.10 and 1.11, respectively.
Now consider an m-file code to generate four types of waveforms using the functions
sin , square , and sawtooth . To change the amplitude and frequency of the waveforms,
two control parameters named Amplitude ( A ) and Frequency ( f ) are used. Waveform Type
( w ) is another parameter used for controlling the waveform type. With this control parameter,
one can select from multiple inputs. Finally, the waveforms are displayed by using the function
plot .

Figure 1.10: Periodic signal generation example.


Discovering Diverse Content Through
Random Scribd Documents
kraterende hette; stonden ze stom, met rondom orgiën
van licht, onder oneindige luchtendrama’s, geheel
dood voor de lèvende godspracht van vruchtenland en
wellust van aarde-groei.—Geweldig in lichtmacht
trokken weer ochtend en avond over hen heen. Elken
dag méér naar den oogst, dropen hun handen
zwaarder van aardsappen, donkere en lichte,
vloeiende en heetgistende; kwam zengende
zonneharpoening, die ze verschroeide en martelde in
hevig gesteek, dat hun huid klefte en branderig
verhitte onder hun goed; kwam sjouw-vracht als
gewichtenzwoeg ze verkrommen in gang, tot de
avondzon wat koeling bracht; nimbus-rood damplicht
omzeefde de avondweien. En zoo, in de vroege
zomerhitte voelden ze áán de werkers, dat komen
ging, elk uur nàder, de hooggroei van polder, de
goudzang van ’t graan, de davergloei van tarwe,
rogge, haver, als maaierszwaai was weggesikkeld, en
àchter hun arbeid, ’t land in gouden korenbrand
oplaaide; vloeiend goud, dat zingen kon. Als de oogst
van golvend levensrijp, uit alle aardhoeken kwam
opjubelen, in feilen hoogen goud-brand, en
vogelenkweel over hun koppen verwaaide. Als in de
oneindige stilte van ’t land, opengebarsten
vruchtzwijmel, in heete baring van leven, de zaden
uitstortten; één fluistering er suizelde van halmentaal,
de ziedende geboorte van korrels en zaden luidloos
gebeurde in de stille oneindigheid van lucht en grond.
Als uit de zwel-aren en verwemelende strooiing van
levend zaad bij elken windestoot, groèi de aarde
doorstroomde, doorschokte, in krampigen sidder van
hevig, levenbarend genot. Als er ging, groot unisoon
fluistergeheim, koor van arengeruisch, òver den
geheiligden arbeid van handenzwoeg, die gezegend
daar stond, in groei en goudkoorts van ’t licht. Als de
heete, felle jubel van hun zwoeg, de aarde
uitgewellust [19]was, brandend gekust, en wèèr razend
overgekust door passie-schroeiende Zon; hun heilige
arbeid omwaaid lei van winden, de zangerigen en
gierenden; omzwijmeld en bedronken van geuren,
dóórschroeid van kleuren. En ’s nachts, verkoeld weer
door wijd-om fonkelende sterrenwemel van polder,
diep donkere blauwing van hemelkring, met z’n goud
lichtenden wondren flonker van nachtglans, onder dàn
nog oneindiger transen die arbeid stil duisterde; onder
’t stille lichtgepleng van de zilveren sterrenlampjes, die
flonkerden boven de duistergroene aardewei. ’t Land
dàn weggevaagd droomde in wazen van nacht,
immens en sidderend van stilte en roerlooze verten.—

Doorgeharkt was er dagen, in zwijg. Kees was naast


Dirk gaan staan.

—D’r mot nou moar op hoop set hee? wá’ d’r stoan,
stoan d’r dan.

Zon was uit zilverdrommigen wolkenstoet


doorgevlamd in kringen van violet vuur, begon priem-
strak te steken op hooierskoppen. Witte hoeden en
strooien kiepen lichtten en blondden in de wei. Naast
Kees zat ’n maaier te haren, in hoogrood hemdsbaai,
als stil bonk vuur op ’t dijkje, met z’n brons-gladden
kop, lichtelijk gebukt, starend naar z’n zeis, lichte
klankjes vertikkend op ’t messtaal. Blinkende ringetjes
aan groote oorlappen, in verlichting van haartjes,
schudden mee, zachtjes, bij elken klop. Dirk harkte
aan, naar plek waar Kees te wachten stond met
groote steekvork, die fonkelde tusschen ’t gras, als
stilsidderende, kromgebogen bliksemstraal. Telkens
als Dirk wat stapeltjes aangeharkt had, lanste Kees in
geweldigen priem, z’n scherpe steekvork ’t hooi in,
ruischte en kraakte ie met lange slierten ’t begin van
den hoop bijeen.—Dirk rondom, harkte bijzij den dijk,
naar zich toe, en hooger in ’t krakende hooi lanste
Kees z’n vork telkens in, met z’n knie in ’t heet-gouden
gestapel, z’n bovenlijf gebukt, inrukkend tegen de
hoopjes, dat dieper de staalpunten priemden en
vastboorden ’t hooi op de tanden. In trage kracht
heesch ie zich terug [20]aan den vorksteel, dat òprees
de vracht, en plots in forschen zwaai hief ie de
vastgepriemde stapeling boven z’n kop, dat z’n kiel,
onder de armen spande en ritste, wilde hooiharen z’n
gezicht inwoeien.—Langzaam, en waggelend éven
met den gouden hooiklomp boven z’n weggezakt
hoofd, droeg ie z’n vracht dan naar hoogeren berg.

—Onder de poàrepluu! lachte helpertje, die in kleine,


zwakke zwiertjes, Dirk hielp anderen dijkkant
aanharken.

—Poà.. re.. pluu, hijg-sprak Kees, die juist weer ’n


geweldigen hooiwolk opgeprikt en vastgeboord had,
met heftige knie- en lijfrukken, er mee aansjouwend in
gestrekten armhef boven z’n hoofd, dat vuurrood
gespannen stond van krachtzwel. Rondom, wilder
ruischten en sliertten hooihalmen weg; in z’n oogen,
haar en mond. Diepe geur zoette rond. De grond
onder hun voeten kraakte en ritselde in trilling. Van
alle dijkkanten en op weihoeken wuifden wolkslierten,
blond gestrooi, met de dansende beweging van de
blanke harken, die opstapelden. Zwaar uit te hijgen
wachtte Kees even, verzwelgend en inzuigend den
zoeten hooistroom, waar ie tusschen te adem-drinken
stond. Rondom kringden windkoelingen sterkere
hooigeuren áán, dat de kerels dronken duizelden in
den zoeten walm. In Kees’ hals prikte ’t hooi, in z’n
haar en ooren piekten heele dotten. Rondom, nog
wachtend op aanharking van klein-gouden stapels bij
z’n voeten, keek ie in ’t groen, zag ie naar, in ’t licht
weer opkleurende maaiers, met hun zeiszwaai
beheerschend oneindigheid van luchthang en
grasgolving. Grijsblauwig en zilverig dampte van verre
’t wolklichtspel en overal vlindertjes wiekten rond, in
den stildroomrigen zwier van hun kleurenmanteltjes.
Fijner in lichtgezeef, boekette op, uit de bebouwde
polderbrokken, bloesem van erwten, kapucijners en
tuinboonen, wittig en rozerood, als blank-treuzelend
gefladder van kapelletjes en klapwiekend gespartel
van vastgeprikte vleugeltjes op bronsstekelig
rijzenhout. Akkerhommels in rood en brons fluweel
kringden in zangerige gonzen over hun hoofden, en
kikkerkwaak, vroeg-zomersch, in zwelling en
uitsterving weer van geluid, verdreunde [21]uit teer-
groen bekroosde slooten, hun eentonigen broei-zang
van zonne-leven. Doodstil in stommen moord, ging
door de eindeloosheid van groen, en zwier van zoete
geuren, de worsteling van insekt op insekt, in den
zoeten dronken koester en zwijmel van licht en
glansen; bloedde de hartstocht van den vraat, de
stemlooze marteling en prooi-vernieling van zwak en
sterker leven; bleef dreunen de kikkerzang, landelijk
monotoon zwellend en verstervend; bleef gonzen de
hommel, vonkglinsterde de goudvlieg in glanzen van
pauweveerig licht, als vredigde er heilige rust in de
graszee, paradijslijk, zonnekoesterend en
kleurestreelend.—

Werkers sliertten òp hun hooi, àl hooi in één staar


naar hun arbeid. Kees had ingeboord weer ’n hoogen
opgeharkten stapel en stootte toe, met z’n knie hevig
persend, als priemde ie den dijk mee aan z’n vork,
drie, vier keer, telkens heftiger inboomend, dat z’n
steel trilde en veerde in z’n geweldige werkklauwen. In
één zwaai weer zwierde de zwaar beladen vork boven
z’n hoofd, dat diep wegzakte z’n zweettronie in de
hooiwolk, kwakte ie ’t kruipende, krakende gehalm
neer op den al hoogeren berg, waar het als stortend
watergeruisch goud-heet overheen vloeide.

—Aa’s die hoop daan is, sal t’met tait sain Kees, zei
kalm Dirk, voortharkend rond z’n broer, die even
angstig keek of z’n hooge hoop ook helde.

—Nou.… dà dotje nog hee?.… ’k mô nog sluite!

In ’t rond liep Kees met nieuwe zwaar-bevrachte vork,


hoog in de lucht, òm den grooten hoop, zoekend ’n
plekje waar de stapel neergeruischt, meteen ’t best de
kop afgesloten kon worden.—Langs en om z’n hoofd
en lijf fladderden en sliertten al grooter losrafelende
hooidotten, als vlokken licht, die gouïg door de lucht
zwierden en omkronkelden de zwoegende werklijven.
—Diepe geurscheuten al stèrker zwoelden rond, in
zonnigen zwijmel, als vloeide er koorts van heete
mirre uit ’t zwaar-bevruchte land. ’n Laatste stoot nog
boorde Kees in, dat de vork sidderde in z’n klauwigen
greep, met hevigen zwoeg van z’n kronkelend,
inbukkend en krachtuitzwellend [22]lijf en dampende
hijgborst.—Hijg-zwaar zwaaide blonde wolk boven z’n
kop, sloot ie de hoop, blond uitbergend boven z’n
reuzige schonken en hooggeheven armen. En overal
nog in fijne verschuiving van halmen op den hoop,
ging wit-gloeiende schittering van steekvorktanden
tusschen den goudklamp, voorzichtig, als tastten daar
lichtende, stalen vingers in brandend goudhaar.—

Kees’ lijf dampte van zweet en z’n rood-paars hitte-


gezicht verdroop nattig vet. Zwaarder blaasbalgde z’n
borst van moeheid en hitte, en door z’n kop hamerde
’n bloedstroom, als zou ie te barsten springen.
Wezenloos wat minuten, bleef ie doodop staren voor
zich uit, in den kleuren rondstrooienden wolkenhemel
van paars en zilvering, zonder dat ie lucht en aarde
zag.

’n Half uur later stapten ze naar huis, met vorken en


harken op schouêrs. Rondom dreunde kikkerzang,
afbrekend inééns, dat plots stèrker de stilte op ze
aanviel; dàn weer zwelkroppend aanklakkerend in
zangdeun, verinnigend de doorzonde zwaarkleurig
bewolkte geur-lucht. Het licht, lager al, zeefde schuine
glansen over de rijzen, die berkenzilverden en
bronsden in halve schijnsels, tusschen het weigroen
knoesterig inknuppelden. Zeisengalmen van heel vèr
woeien áán op ’t wegpad. Sonoorder nog in zaligen
fluister van wei-avond, zong de zachte, toover-fijne
ruischmuziek, geheimvol van ’t gras en koornhalmen
uit. Stiller schoven en spreidden de glansen tusschen
vonkgroen en goud-gele bloemekelkjes, en rustiger in
stommen stap gingen Kees, Dirk en helpertje naar
huis, op ’t nog branderige zand en kei van hoofdweg.

Achter hen aan, wat later stapten telkens tuinders van


’t land op de klinkers, stil naar hun kluis, uren vèr.—

[Inhoud]

III.

Ouë Gerrit keek grommig, toen ie hoorde, dat ’t hooi


nog niet heelemààl overend was gezet. Maar de
kerels raasden [23]en vloekten op den Ouë, want hij
wist toch, dat ze zich tot ’t hemd toe in zweet
gezwoegd hadden. ’s Avonds stond ouë Gerrit ’n pijpje
te smoken, in uitgezwoelden zomeravond.—

Met woederig gevoel in ’m, van allerlei opgepropte


nederigheidjes en teleurstellingen, bleef ie wat
drentelen voor den dorsch van Janbuur, die al aan ’t
òpsteken was. Daar stond ie nou, smokend voor
schimmig verlichten dorschingang, naar de duistere
stolp wat afgehakte bitse woorden, met onzekeren
stemmeklank, tot Jan Brakel opgooiend, die boven op
den berg, met z’n kop bijna tegen de pannen schoof,
verdonkerd tusschen balken en binten. Daaronder
groezelde, meer in ’t weifellate licht, hooiwagen met ’n
kerel erop, die zware vorken naar z’n baas opstak,
met forsche rukzwaaien ’m begravend in een graf van
halmen, onder de duistere pannen. In druiping van
zweet op z’n mager, uitgebeend gezicht, stond de
daggelder op uitgespannen wagen in schemerenden
dorsch, te hijgen, telkens met meer rukken en tragere
stooten de vork vastpriemend in ’t hooi. Achter z’n,
met grillige schaduw schuw-verduisterd hoofd,
bonkten donkere doffe stooten en stampen van
paardpooten tegen beschot, walmde uit, zoetige
wasem van strooiigen stalstank. Even telkens, in buk
en wrong van z’n lijf, als ie inlanste z’n vork, kwam z’n
rood bezweet gezicht wat meer in ’t licht schimmen.
Donkerig-grauw rood van uitputting, smalden z’n
kaakhoekige wangen beenig vooruit.—Ver boven z’n
hoofd, in de duistere diepte der stolpzoldering, hapte
’n vierkant klein glas-pannetje ’n lichtgat in ’t donker,
waarin soms plots bij ’n zwakken harkhaal, brok
gezicht van Janbuur op den berg vagelijk
òpschemerde, en weer snel wegdonkerde in de
geheimzinnige stolpdiepte.

Zwaar van klank en natrillend in ’t duister, klonk


Janbuur’s stem uit de zoldering, tusschen het zachte
geruisch en geritsel van z’n gehark.—Ingebocheld aan
ingang, bleef Gerrit luisteren, z’n kielblauw droevig
verpaarst in den schemer.—Onrustig had ie z’n pijpje
mondhoek ingebeten, nu en dan optrekkend
reutelenden zuighaal, vernevelend z’n hoofd achter
rookwolken. [24]

—Hai je je boel dan nog nie te hoop?.. wa’ luie


broàsims die jonges van jou tog-en-binne, dolde
Janbuur, uit berg-duister.—
Ouë Gerrit voelde zich nijdig worden, hoorde dol-klank
maar half.

—Ho!.. ho!.. wa’ saa’k segge!.. vier en vaife en nie


genog.… aa’s je wa’ forrekies hooi allainig neudig
hep!.. bi’ je gàuw kloar.… huhu!.… huhu!.… de kerels
hewwe nog wá’ meer aa’s hooie hee?..

Bleek vaalde schemering op de vuil kalkwitte muren


van dorsch. Al donkerder zwartten wielen, voorkrat en
dissel van den hooiwagen, tusschen de donkere
hooge gebinten en ’t verduisterd gevaarte van stolp.
Donkerder kromde en zwoegde gestalte van werker
op den wagen en angstiger onder z’n verdonkerende
gebaren kermde, in de lugub’re dorschstilte, z’n zware
hijg-borst.—Z’n kop wasemde in ’t zweet en voort ging
z’n vork in het ruischkrakend hooi, hieven z’n donkere
armen stapel op stapel naar den stolp, waar ’t
neersiste, op den al hoogeren, duisteren bergrug. Z’n
beschemerd lijf schimde er verkromd en vergroeid als
schimmige karyatide, waggelend op de lager-zinkende
vracht, in krampige worsteling met het droog-wilde
veerende hooi, dat onder z’n voeten uitsprong en
tegenspartelde als levende aren.—

Z’n schimmig gezicht, bij vastboring van hooi,


grauwig-rood alleen even te zien bij beenige kaken, in
den omhuivenden schemer van ingang, draaide
telkens donkerend wèg naar den baas, en stom sloeg
z’n stille late avondzwoeg door het afbrekende
gepraat van ouë Gerrit en Janbuur op den klamp.—

—Kaik ke’rais die Kerkvoarter doár.… die is d’r puur


van f’morge halfdrie an ’t gangetje! en nou.… sel t’met
naige uur weuse hee?.… één skoffie hep ie had..
daa’s doenig hee? één skoffie van ’n kwertier t’met!
daa’s doenig hee?

Janbuur blufte op ’t werk van daggelder, alleen om


ouë Gerrit te hinderen.

—Moar da’ mot sait.… hai hep dan ook ’n fesoenlik


duitje.. doàr sit ’m alles in Blommepot.… daa’s ’t
geheim vat je?.. [25]wa’ jài nie kwakkelt.… mi je
blommetjes s’murreges knippe!—’n fesoenelik
doàggeld.—Zwaarder griste en kraakte ’t hooi onder
hooiers kousen, en even uit stolpduister kwam lijf van
Janbuur naar voren bukken, z’n donkere kop, turende
laag in den dorsch, die volgegrauwd diepte van
schaduw en schemer.

—Hee.. Joap!.. schreeuwde ie, naar den wagen,


hoeveul vorkies nog, ’t wort main puur te donker!

—Nog drie, dan is ’t daan, kreunde dof stem van


daggelder. Z’n donker lijf ging voort in zwoeg, lanste
en vorkte ’t laatste hooi òp. Z’n armgebaren vaagden
nog schimmiger, verdiept tegen ’t weifelende
dorschduister van achtergrond, geheimzinnige hal van
verdonkerde binten en kruispalen. Soms vréémd,
lichtte oogenwit om appelkrans, nog èven schichtig
onder hoedrandje en verduisterd gezicht uit, als ie
opzij keek naar den berg.

Ouë Gerrit, leeg-wrevelig, niet wetend meer wat te


zeggen, zei zacht goeien avond, klompklotste wèg,
loom, vol kregel naar huis.
Den volgenden ochtend schommelden bij hem twee
wagens hooi van één dijk in, die de jongens uit angst
voor regen, maar opgestoken hadden.

Op balkvoeting stond ouë Gerrit in ’n erfhoek, achter


bollenschuur, klaar. In open lucht zou daar ’n berg
neergebouwd worden. Regen spatterde en
windrukken stootten òp uit oprijlaan, waar de voerman
één wagen ingereden had.—’t Geurde over hun
hoofden. Kalm, als onder zonnegouden en
blauwenden hemel, vorkte voerman ’t hooi van z’n
wagen. Piet stak òp, naar den Ouë. Met vertrokken
rimpels in z’n gezicht, stond die omsparteld van regen
en windgeslier, bangelijk ruggekromd en beverig de
opgeworpen stapels naar zich toe te rollen en op te
bossen.—Diep zonk ie in broeihooi, dat z’n enkele
blauwe kielromp krommig tusschen ’t matgoud gehalm
uitbochelde.—

—Wa he jai ’n mooie vork, lolde Piet.… jai lait d’r ’n


borrel glad, moar de bulle binne tog in orde.

—Joa jonge, ironiseerde terug voerman, afvegend


zweetgezicht [26]met mouwvest-end, en neerharkend
hooihaar langs wielen en raambalken. Joà jonge, dá’
f’rboast jou hee?.. jai hep kwoalek ’n goed stuk
gereedskap sien hee?.…

Lachend en sneller vorkte ie af, dat Piet wegzonk tot


de borst in de stapels.

Ouë Gerrit, in strammen buk, hijgend en puffend op de


voeting, doorstriemd van regen, schuw van nattigheid,
waggelde hooger, al hooger op hooiklamp, woelde,
struikelde en verstrompelde tusschen het broeische
gehalm, wreef telkens één hand tusschen lokken en
baard. In zichzelf gromde ie, waarom ie maar niet, nà
de pluk, wat hooi gekocht had.—Zou ie niks te maken
hebben gehad met gemaai en gedroog, net als
verleden jaar, al was ie ’n beetje bedonderd met de
kwaliteit.—

—Wa hondeweer hee?.. f’rduufeld aa’s ’t droog is.…


mot tug droog saine aa’s ’n hart saa’k moar segge!.…

—Je ken.… die jonges ook niks.. late doen.. droog-


komiekte voerman weer van den wagen, lager
beenend den karbuik in, onder al zakkende
hooivracht, snel-rustig stapels neervorkend rond Piet’s
lijf. Piet lachte van zenuwachtigheid voelde wel dat
voerman ’m nàm, met al haastiger afwerping van z’n
vorken. Geweldig in werkdrift lanste Piet z’n
vorktanden trillend vast, in de krakende, ruischend-
blonde woeling om ’m heen, duwde ie dieper en
gejaagder den steel in ’t hart van de nattige stapels,
dat ie grootere vrachten vastpriemde en in woesten
zwaai boven z’n kop sloeg.—

Heviger zwollen z’n slapen en aderen, en vlug, als kon


ie geen til meer uithouên patste ie z’n vracht tegen
ingebukt achterlijf van ouë Gerrit, dat die schokte op
z’n voeting en voorover strompelde.

—Ho-ho! main kristus.… waa’n drift!.… is da hooie!..


je laikt puur daas!.…

Piet hoorde niet, wou niet achterblijven. Regengespat


en windgeruk splinterden en joeg om z’n warm
gezwollen zweethoofd. Hooibroei verhitte z’n lijf en
springende stroo-sprieten priemden in z’n oogen en
hals, jeukten in z’n ooren.

Zoet dampte hooigeur rond, op ’t zwoel-smoezelige


erf, over [27]den natten glimmerigen moestuin, onder
de grauw-wazige lucht. Hooigeur honingde rond,
rookte in Piet’s beregenden mond. Woester en driftiger
werd ie van binnen. Dier-zwaar hijgde z’n borst, en
geweldig in werkstilte lanste z’n vork in de zwoele
stapels. En hooger om hem, in kalmen sar, begutste
voerman ’m met gouden golvensmak, als moest Piet
stikken.

Erger, èrger giftte ’t in Piet. De zwoel-warme geur


maakte ’m woestiger, duizelig, de regen plekte natter
op z’n handen, jeukerig en piekend, en de wind joeg
’m op, lawaaide in rukken om z’n fladderkiel. Vloeken
kon ie. Al drie maal was ’t gekeerd, en nou wèèr
regen! Heeter broeide in de nattigheid ’t blond gegolf
om z’n lijf en polsen. Hij trapte er op, woelde,
wankelde, stampte en spoog er z’n pruimsap in. Hoe
meer ie weg rukte, hoe sneller voerman stapels op ’m
neerdrommen, neervloeien liet. Heftiger en
veerkrachtiger, als in helsche spanning van al z’n
spieren, nagelde Piet grootere stapels aan z’n vork,
nauwelijks meer te tillen, hief ze langzaam, in
heupwringende kracht-ruk boven z’n kop, en kwakte ’t
woedend neer op ’t lijf van Gerrit, die hem niet meer
bijhouden kon.

—Da goan soo nie.… je laikt hooikoors hewwe.… wa


skeel jou?.…
Paarsrood van uitputting bleef Piet hijgen éven. Zweet
en regen, glibberden natte kringen om z’n neus en
mond, die glommen als met boter ingewreven.—

Het balkraam, boven de wielen van hooiwagen, kwam


al bloot, zoo snel-zeker had voerman af gestrooid,
toen Piet nog in den om hem héén gebouwden,
uitheupenden berg stond te woelen met z’n vork, niet
wetend meer waar ’t eerst de stalen tanden in te
harpoenen.—

Stiller was ie gebleven, want zonder woord òpenlijke


ruzie had voerman ’m klein gekregen, in zwijgenden
krachtworstel.

Na uren kreun-stillen zwoeg eindelijk, stond de berg


overeind, voelde Gerrit zich blij dat ie in den regen,
toch doorgezet had. Dadelijk, met zwart zweetig
vervuild gezicht, hooidotten, tusschen z’n haar en nek
gepaveljot, doorzogen van regen, was Piet weer den
tuin ingeklomp-klotst, om te rooien.— [28]

[Inhoud]

IV.

Vroèger in den ochtend, kropen de werkers op de


akkers, làter bleven ze wroeten, donkerend in den
schemer. Van alle kanten onder de tuinders, joeg
werkkoorts, onrustten oogen en handen. Kees was
drie avonden in de week, om nog ’n extraatje te
verdienen, bij ’n ander aan ’t sla-steken, voor ’n
baasje, die wat akkers kroppen van ’n grooten
kweeker gekocht had.

Van Beek achteraan, waar ’t werk tegen half negen


klaar was, liep ie òver naar den avondpatroon, om de
sla uit te dragen, te bakken. Baas Booker zelf werkte
mee, tusschen de nog helgroene lange krop-regels,
stak snel de sla met klein mesje van den grond, ze
zuiverend, en handig afscheurend ’t rot zanderig blad.
Zoekend loerden z’n oogen tusschen de regels in,
wáár de grootste propten; en telkens in buk, zonder
opkijken sneed ie àf, keerde snel elke krop òm, nekte
met scherp mès ’t vuil er van, smeet ze gestoken weer
néér op den grond. Zoo ging ie voort, in één buk, de
oneindige groene regels langs, springend dan hier,
dan daar tusschen de kroppen, waar net èven plaats
bleef voor z’n klompen om te staan.

Kees, met drie andere nazwoegers, vulden de bakken,


sjouwden drie vier op elkaar, voor d’r buik, langs de
greppels en loopkanten van bollenpaden naar de
karren, aan ’t eind van de lange akkers. Hun lichamen
kraakten en persten van zwaren sjouw, telkens als
vrachtbakken afgedragen moesten worden naar ’t
eindpad. Achter Kees hijgde aâmborstige kerel,
kuchend en vloekend de kisten voor z’n buik tillend, in
zwaar moeë armenstrekking.

—Wa’ dá’ goed nog donders swoar is, kreunde zwak


z’n stem. Bij elken vrachtsjouw hing z’n tonglap ’n end
z’n zacht-kermenden mond uit, als van bezweeten
hond.
—Wa’? die poar bakkies, blufte ’n ander, sterke
knoest, toch zwaar hijgend onder ’t tillen en
versjouwen. Jai kâ d’r nie uitdroage.… loà ’n aêr die
sinte hebbe hee!.… [29]

Aamborstige kerel zweeg,—Hij kòn niet spreken, z’n


stem was wèg.—Hijgen alleen, hijgen deed ie, met ’n
gevoel alsof er wat brak onder z’n zij en borst. Den
heelen dag in zonhitte verploeterd en nou nòg z’n na-
avond verzwoegen … nee, hij zag ’t nou.… hij kon ’t
t’met niet meer houên. Vanavond voor ’t laatst. Zoo
bromde ie in zichzelf, zwijgend voorttillend en
versjouwend met ’t zweet op z’n moe lijf vergloeid,
kuchend en ploeterend in de greppels.

Avondgoud was in wonderen rooden gloed over hen


heengedampt, had hun koppen verbronsd, de velden
van stervend loof, pastèltintig fijn beglansd, en de
groene boomdrommen en hagen, laag langs de aarde
doorgloeid in laat goud-vurige pracht; verstillend ’t
land, de groei-zware akkers, vèr-zaligend ’t zachte
geruisch dat nauw hoorbaar, als lichtste fluister uit ’t
loof aanzwoelen kwam.

En laat, nà zonnedamp en rood-brons lichtgevloei,


bleven ze nog stapelen en steken, laden en afrijen, tot
de aarde, zwartdonker onder hun klompen
wegduizelde in ’t nachtduister. Van alle kanten
bonkten karren van sla-stekers aan, trokken de kerels
in de avondkoeling naar de Haven, waar sjacher-
rumoer hurriede, en davering raasde van
wegtrekkende en aanratelende vrachtwagens.
Uitgeput en gebroken van hitte-marteling en
vermoeienis, duwden de werklijven achter hun karren
áán, sleepsleur van loodzware vrachten, duwend met
armen, buik en beenen; wat kerels, bij elken kar
vòòrop, met hangtouw striemend gespannen over hun
doorgroefde ruggen. Zoo, in rijen achter elkaar,
ratelden hun vrachtkarren heen en terug door de zoel-
koele lucht, door den heerlijk-neerdauwenden
zomernacht, met overal ’t azuurfluweel van de
hemeldonkering tusschen erfjes, tuintjes en
gevelbrokken; ging hun laatratelend kargeploeter door
de stille, deftige straatjes, waar burgers en notabelen
in hun opgepronkte tuintjes thee dronken, lachten en
babbelden; groote kinderen nog joolden en sprongen.
En nu en dan, tusschen donker belantaarnd
dennetjesgroen van villátje, vlamde een rood-bekapt
cierlampje op, vèr uit tuinduister perspektief,
tooneelvreemd, in rood-diepen gloed, als [30]’n vurig
fantoom van sprookje, droomrige glanzen rondom
verwazend, den fluister-duisteren tuin-nacht in.

Van de duizend laantjes uit, òm Wiereland, zwoelden


warm-zoete geuren áán, van bloeiende meidoorns.
Ook de zijwijkjes tusschen de deftige Reekerstraat in,
wijkjes van werkers, zoelden en zwommen in geuren
van meidoornzoet, schemerden donker en zwaar
volgegroeid met hoogkronende kastanjen en
lindeboomen, duistere reuzen in den avond, daar
opduikend voor de kleine raamruitjes, die stil
opstaarden tegen stammen-machten.—Geluidloos, als
karren voorbij gerateld waren, vroomden de
werkwijkjes in avondrust, ging zwellend en stervend
boomgeruisch, in zoete wiegeling en week gefluister
door ’t zware duistergroen; vaagden de krotjes laag-
gevelend achter de reus-boomen, neergedrukt en
gesmoord onder hun boschweelderigen takkenhang.
Vóór de verdonkerde deurtjes, aan weerszij van de
smalle straatjes, duisterden wat rompige, hurkende
kerels en vrouwen, platzittend op de steenen, in
spraakloozen zwijmel, genietend na zwoèg, van
meidoorngeur en bloemenzoet, aanwaaiend in
zachten windruisch en koele luwte, van allen kant.

Kees sjokte, doodòp, van de Haven terug door de


achterwijkjes. Enkele kleine raampjes lichtten gouïg-
mat in lampglans, uitlijstend achter boomdonker. In
valen groezelschijn van klein petroleumlicht, sjofelden
achteraan wat winkeltjes òp, met vervuilde magere
uitstalling van blauwe en rood bemantelde heiligen-
beeldjes, kruisjes en goud-kransige moeder Maria-
plaatjes, strak-hard van kleur, verteederd en
getemperd wat in armoedig-valen lampglans.
Begijntjesachtig, tusschen de beeldjes, achter ’n
winkelraampje, geelde uitgeputte gapende vrouwe-
kop, armleunend op toonbankje.

Hoog, de overal uitstekende toren van Katholieke


kerk, donkerde uit verren boomendrom òp,
overheerschend in geheim-zwarten ernst, de
armoewijkjes. En ruischvoller, in zachten huiver golfde
uit, bòven de ingezonken donkere krotjes,
boomenzang van kruinen, zachte suizel zuchtend door
de avondstraatjes, volgevloeid van zomergeuren en
gekruid meidoornzoet. [31]

Kees’ gezicht, even opgelend in schamele lantaarn,


de éénige in ’t diepe straatje, schoof voort op z’n
donker lijf. Hurkende kerel had in ’t voorbijgaan z’n
gezicht gezien.

—Nog òp de klompe Kees, schreeuw-vroeg ie, in


hurkzit vóór z’n donker huisje.

—Da’ sien je.… hee? moar nou smeer ik sàin, zei


Kees afgemat,.… van half drie in de kous.… daa’s
t’met twintig uur, an één stuk,.… ke’ je je aige voele in
die hitte!

—Nou, ikke van drie tut naige.… main waif hep vinte
waist.… moar sai is d’r tut op haide, f’rdorie nòg nie.…
hep jai d’r nie sien?.… hep puur al twai kair an de
hoafe waist.… lag d’r aêrs al langerst in.… ikke si’
puur te wachte mi’ de sloap in main lampies.…

—Tog is ’t nou paa’s lekker hee?.… je sou d’r f’rtoetert


soo sitte blaive aa’s je ’t kòn lappe, mi’ je kin op je
knieë, hee? zei met zwaar-volle stem, een van overzij,
uit ’t duister ingehurkt, z’n rug tegen z’n huisje
opjeukend.

—Kè’ je nou nog effe mi’ f’soen doene, moar wacht,


erais, maàn, aa’s de groote hoal d’r is, he je om half
elf nog nie daan,.. Lap jai ’t dan erais?.… aa’s je om
half elf kloar bin!.… enne.… je mo, je mô.… om half
drie weer persint! je sloap dan krek vier uur.… en
dan.… aa’s te weerlig d’r uit!

—Nou vroeger he’k sloape aa’s ’n os.. schorde ’n


ander, moar nòu.. ikke bin d’r al van de sestig, tog
gain hufter hee?.. Moar f’rdomd.. aa’s ’k sàin in soo’n
hitte pakke-en-weut!… ikke kâ nie en sloape..! main
poote brande op ’t bed hee?… se gloeie puur!.… da’
kook je nie goar van hee?.… Krikf’rdorie.… ikke kâ d’r
nie inkomme.. ik droai ’t met aa’s ’n knain in de
sprenkel.… en main ooge brande aa’s vuur hee?.…
En main kop.… tjonge! daa’s doar ’n roar soakie.. da’
kloppe sullie of se d’r spaikertjes in main test sloàne …
Neenet, ’t heule soakie is mis mi main!

Van overkant, waar Kees stond, achter zwaar


boomdonker uit, was de klacht uitgeschord. In trilling
en snikzucht van vermoeiing had ’t geluid geklonken,
beverig door ’t verstilde [32]avondstraatje en plechtig
ruischten boomkruinen nà, hoog boven de donkere
stomme zwoegers, in geheimen fluister.—

Weer brom-beefde z’n schor-moeë stem nog tegen de


krotdeurtjes en ruitjeskleine vensters òp naar de
duistre kerels, die hij zelf alleen kon zien in vaag
rompdonker, toen naast ’m plots een inviel:

—Da’ he’k nooit last van,.… aas ’k en leg, sloap ik


t’met.. main waif hep main te kaire aa’s ’n
pannekoek.… aas ’k uit mot, wá’ jai Kees?.… Veur jou
mog ’t t’met winter weuse hee?.… dá’ stroope is tog
bestiger werk hee?.…

Kees hoorde stom áán, bleef rondturen op de


hurkende kerels, mompelde plots zacht genavend en
sjokte weer voort in sleepgang, met ’n vracht moeheid
aan zijn beenen, als rukte ie bij elken stap, reuzige
gewichten voort.—

Nog drie kwartier gaans eer ie thuis was! In geweld-


rateling bonkten groentekarren ’m voorbij, de
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

textbookfull.com

You might also like